Я использую библиотеку PHP-DI, и она прекрасно работает для моего кода , используя файл начальной загрузки и файл конфигурации , как рекомендовано в документации PHP-DI.
Затем в моем приложении я получаю контейнер и запускаю его, вызывая загрузчик:
$container = require __DIR__ . '/Container/bootstrap.php';
$main = $container->get( Main::class );
Так что теперь я пытаюсь настроить модульное тестирование с помощью PHPUnit.
Я хотел бы получить контейнер $ в каждом классе Test, чтобы я мог внедрить все зависимости каждого теста, используя $ container-> injectOn ($ this) , как предложено в PHP- DI документация .
Я наткнулся на этот открытый вопрос [который в основном у меня над головой], но он все еще открыт и, похоже, не имеет никаких рекомендаций.
https://github.com/PHP-DI/PHP-DI/issues/125
Я думаю только о том, что я могу просто вызвать bootstrap в setUp () так же, как и мое основное приложение?
$container = require __DIR__ . '/Container/bootstrap.php';
Это то, что я должен делать? Есть ли более элегантный или рекомендуемый способ сделать это?
Спасибо!