@azeke15

Как замокировать вызывающиеся методы другого класса?

Привет, разрабы! Есть вопрос по тестам. Покрываю первый раз. Внизу пример:
class Book
{
public function bookFunction()
{
$page = new Page();
$page->validate($params);
}
}

class Page
{
public function validate($params)
{
$model = new Model();
$model->getParams($params)
}
}

class Model
{
public function getParams($params)
{
//DB::query...
}
}


Как я могу замокровать метод getParams, если я покрываю тестами класс Book?
  • Вопрос задан
  • 160 просмотров
Пригласить эксперта
Ответы на вопрос 1
@kosarinin
Создавай объект класса Page через фабрику и уже возвращай мок класса Page. Если ты тестируешь Book, тебе не надо тестировать Page и другие ее зависимости.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы