Tvoji testovi, da bi bili kompletni, moraju da testiraju za sve upotrebne kombinacije magacina i svaki moguci odabrani alat. A ako testiras postupak ciscenja za svako moguce odabrano sredstvo to je isto kao da si testirao i parametrizovani metod za sve moguce ulazne parametre. Jel sad jasnije? Krateci testove ti si napravio pretpostavku kako ce magacin da izgleda i ako on ne izgleda tako imas netestiran scenario, zamazao si sefu oci sa "imam test" nad skrivenom metodom koja ne puca na tvom pretpostavljenom magacinu, a bagove, to nek resava kupac ili Q&A, jel tako? "Assumption is the mother of all fuckups"
Vidis interni state objekta je uvek parametar svakog instance metoda (predstavljeno kroz interni skriveni parametar, this npr) i tvoje testiranje mora da ukljuci taj state kao parametar. Dalje, da ti jos zakomplikujem zivot, u sorsu taj tvoj Clean() metod bi mogao da se refaktoruje na kod koji bira sredstvo i onda poziva Clean(sredstvo) specijalizaciju, sto te vraca na prvi korak. Dakle, ako nemas toliko testova, opet si zabusavao i koristio black-box prirodu metode da pokrijes potencijalne rupe

I da ja priupitam, zasto je ova tema u PHP forumu kad se tice teorije programiranja, zar nije AoP bolje mesto?
[Ovu poruku je menjao Goran Rakić dana 16.06.2010. u 01:45 GMT+1]
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić