Внедрение класса репозитория в класс обслуживания, а затем попытка инициализировать класс обслуживания в тесте без передPhp

Кемеровские программисты php общаются здесь
Anonymous
Внедрение класса репозитория в класс обслуживания, а затем попытка инициализировать класс обслуживания в тесте без перед

Сообщение Anonymous »

Скажем, у меня есть:

Код: Выделить всё

class SomeService implements SomeInterface
{
public function __construct(private SomeRepository $repo)
{}

public function createSomething(array $data)
{
}
}
Если я захочу протестировать этот класс обслуживания с помощью PHPUnit, я получу ошибку «слишком мало аргументов передано в SomeService::__construct()»

Код: Выделить всё

class SomeServiceTest {
protected function setUp()
{
$this->service = new SomeService;
}

// some tests using above service...
}
Я вижу множество примеров этого по всему Интернету, но почему, когда это вызывает эту ошибку?
Я что-то упустил? Вы не хотите снова передавать репозиторий конструктору в тесте.
Я подхожу к этому неправильно?

Подробнее здесь: https://stackoverflow.com/questions/790 ... tiate-serv

Вернуться в «Php»