Наистина съм нов в PHPSpec и BDD като цяло, така че може би предположението ми не е добро, в такъв случай, моля, поправете ме.
Нека разгледаме този сценарий
//src/myBundle/Model/FooInterface
interface FooInterface
{
[...]
}
//src/myBundle/Model/FooAbstractManager
abstract class FooAbastractManager implements FooInterface
{
public function aCommonMethodForAllConcrete()
{
[...]
}
}
Добре, да кажем, че aCommonMethodForAllConcrete()
споделя някаква имплементация с всички конкретни класове и че искам да напиша тестов случай само веднъж.
Най-накрая (поправете ме, ако греша) имах "идея": създайте конкретен FooAbstractManager
само за тестване на този общ метод и оставих всички тестове на конкретни методи на конкретни класове.
НО тъй като не искам този FooAbstractManager
да бъде част от моята кодова база src
, идеалната ситуация би била да включа този клас само в определена поддиректория на папка spec
.
Въпрос: как мога да персонализирам това поведение, БЕЗ да посочвам, че ВСИЧКИ /src/myBundle/Model
файлове с пространство от имена ще бъдат там (тъй като може би утре ще трябва да запазя файл с конкретен клас точно там)?