Мне известно, что из-за названия это очень похоже на часто задаваемый вопрос. Это не та проблема.
В моем наборе тестов Laravel я пытаюсь смоделировать объект Illuminate\Http\Request
, чтобы заставить getClientIp
вернуть указанное значение c:
$this->mockedRequest = $this->createMock(Request::class);
$this->mockedRequest->method('getClientIp')->willReturn('geralt.of.rivia');
Тем не менее, приведенная выше строка кода выдает мне следующую ошибку:
Call to a member function willReturn() on null
Другими словами, метод mock method()
PHPUnit сам по себе, возвращая ноль, что делает невозможным цепочку ->willReturn()
после него.
Я понятия не имею, что может быть причиной этой проблемы, и поиск ошибки в Google является исключительно трудным из-за количества людей, спрашивающих, почему их поддельный метод возвращает null
(потому что они не т-цепь ->willReturn()
.
Есть идеи?
- PHP 7.0
- Laravel 5.3
- PHPUnit 5.7