Итак, у меня есть такой простой файл модульного теста:
class testService extends UnitTestCase {
function setUp() {
parent::setUp();
}
function testCall() {
$service = \Drupal::service('plugin.manager.rest');
}
...
}
поставщик / bin / phpunit -c core / modules / custom / имя-модуля /
имеет ошибку ReflectionException: класс не существует
в Devel я могу выполнить PHP с помощью этой строки:
$service = \Drupal::service('plugin.manager.rest');
Что я скучаю?
Спасибо





\ Drupal :: $ container еще не инициализирован. \ Drupal :: setContainer () должен вызываться с реальным контейнером.
Вы должны объявить $ container и установить для "plugin.manager.rest"
$ resourceManager = $ this-> getMockBuilder (ResourcePluginManager :: class) -> disableOriginalConstructor () -> getMock ();
$ this-> container-> set ('plugin.manager.rest', $ resourceManager);
объясните, пожалуйста, свои доводы в ответ.