Тест AspectMock :: double не работает в тестах Yii2 - PullRequest
0 голосов
/ 10 января 2020

Когда я пытаюсь смоделировать что-то вроде этого:

Test::double(MyService::class, [
    'accept' => true
]);

Выдает ошибку:

Вызов функции-члена registerClass () для null

Я не смог найти ничего в inte rnet, чтобы помочь мне с этим. Есть идеи?

РЕДАКТИРОВАТЬ На шаг впереди. Мне пришлось обновить Test / _ bootstrap. php следующим текстом:

$kernel = Kernel::getInstance();
$kernel->init([
    'debug' => true,
    'includePaths' => [__DIR__ . '/../service/'],
    'excludePaths' => [__DIR__],
    'cacheDir'  => '/tmp/aopcache',
]);

Это все еще не работает, но, по крайней мере, не выдает никаких ошибок. Есть идеи, как заставить AspectMock на самом деле издеваться?

РЕШЕНИЕ

Я понял это. В вашем тесте / _ bootstrap. php вы должны вести себя после того, как вы настроили ядро:

$kernel->loadFile(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');

Это можно закрыть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...