Chodzi o phpunit.
Mam taki walidator, który działa zależnie od tego, jakie metody walidujące są wczytane. Zatem w katalogu src mam klasę Validator, a w katalogu test klasę ValidatorTest oraz trait ValidatorMethods. Są to oczywiście 2 odrębne pliki php. Ten ten trait zawiera metody walidujące.
I sobie testuję tę klasę Validator. Ale to jest testowanie tylko dla jednego pakietu metod, pakietu zawartego w trait ValidatorMethods. A trzeba by jeszcze potestować na inne pakiety metod, czyli jakby inne elementy trait ValidatorMethods.
Kombinuję coś w ten deseń, ale nie wiem:
Pliki ValidatorMethods1.php, ValidatorMethods2.php, ValidatorMethods3.php, ValidatorMethods4.php... wczytanie ich do jednej tablicy i jakieś wstrzykiwanie do klasy Validator... No właśnie, bez sensu.
Jak by to rozwiązać? Z góry dziękuję.
(edit)
Próbowałem zastosować wielokrotne nadpisywanie traita przez inkludowanie, ale okazało się, że normalnie nadpisać traita się nie da, bo wyskakuje fatal error 'cannot redeclare trait'.
Rozwiązanie:
Doszedłem do wniosku, że jedynym wyjściem jest umieszczenie tych validator methods w klasach i kolejne wstrzykiwanie obiektów tych klas w każdej pętli testu.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)