Могу ли я вставить URL в «историю» моего приложения при тестировании в Laravel? - PullRequest
0 голосов
/ 08 мая 2019

Я пишу набор тестов для приложения Laravel. Я делаю утверждения в отношении конечной точки, которая использует проверку запросов Laravel для проверки ввода пользователя. Он автоматически перенаправляет пользователя на предыдущую страницу.

$request->validate([
    'name'     => 'required',
    'email'    => 'required|email',
    'timeslot' => 'required'
]);

В настоящее время я утверждаю, что если я отправлю недопустимые данные на эту конечную точку, я получу код состояния перенаправления обратно. Это хорошо, но я также хотел бы заявить, более конкретно, что пользователь перенаправлен обратно на предыдущую страницу .

Мне кажется, что для правильного тестирования этого условия мне нужно как-то «вставить» URL в историю браузера моего набора приложений / приложения, а затем подтвердить, что URL-адрес перенаправления равен того же URL.

Как я могу это сделать?

1 Ответ

2 голосов
/ 08 мая 2019

В тесте Laravel для имитации ранее существовавшего URL вы используете метод $this->from($url), предоставляемый классом TestCase.

Пример его использования:

$this->from('/home')
     ->get('/profile')
     ->assertSee('User profile');

Вы даже можете использовать его с помощником route() или url():

$this->from(route('home'))
     ->get('/profile')
     ->assertSee('User profile');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...