Я пытаюсь сделать свой тест AuthController
. Я начинаю с инъекционным класс Auth, так что я могу дразнить его в моем тесте:Как мне высмеять класс Auth в Laravel 4?
public function __construct(Auth $auth)
{
$this->auth = $auth;
}
Затем я использую нагнетаемый класс позже, когда я проверяю, если Логин удалось:
public function postLogin()
{
// instead of Auth::attempt(Input::all())
if ($this->auth->attempt(Input::all()) {
return 'you are logged in!';
} else {
return 'login failed!';
}
}
Когда я представляю моя форма Войти Я получаю сообщение об ошибке, что метод Auth::attempt
не определен:
FatalErrorException: Error: Call to undefined method Illuminate\Support\Facades\Auth::attempt() ...
что я делаю неправильно? Я видел этот exact technique, используемый в моделях, но, видимо, он не работает для класса Auth.
Спасибо! Я полагал, что это был более низкий уровень, чем этот. Я собирался попытаться сделать приложение: instance (...) в тесте для UserProviderInterface, теперь, когда я снова просмотрел видео, но это имеет больший смысл. –