метод, который вызывает Model::create.
Делаю мок Model::create с методом create->указываю, что вызывается 1 раз и возвращает информацию, заменяю обычную Model на мок Model.
Дальше интересный прикол - стартую тест -> получаю, что метод create не вызывался ни разу.
Делаю dd в методе, в котором вызываю Model::create - модель используется обычная, а не замоканная.
Возможно кто-то сталкивался с такой проблемой?
"заменяю на мок" как?
$this->app->instance(Office::class, $officeMock);
Ну... для того, чтобы это работало надо чтобы объект создавался бы бы через контейнер... Это так?
Могу где-то ошибаться, но я юзаю стандартную библиотеку для тестирования и примеры оттуда. Разве Office::create не берет инстанс из контейнера?
нет, статические вызовы не подлежат такой подмене)
Он не статический. Тяжкое наследство... и я хз что будет, когда в пыхе наконец запретят вызов нестатических методов статиеским путём
Там не наследие, если мне память не изменяет, там в билдере эти методы, а модель чисто проксирует это на билдер внутри себя
Обсуждают сегодня