В Laravel 5.2 мне нужно протестировать отправку формы авторизованным пользователем.
Мне нужно использовать функцию assertSessionHasErrors
, но она работает только при использовании функции call
.
Если я использую функцию call
, меня всегда перенаправляют на страницу входа.
Если я использую функцию actingAs
, я никогда не вижу ошибок проверки.
С этим кодом:
$user = factory(App\User::class)->create();
$this
->actingAs($user)
->visit('/offers/create')
->select('1', 'client_id')
->select('2', 'network_id')
->type('50', 'royalty')
->press('SAVE')
->seePageIs('/offers');
$errors = session('errors');
$this->assertSessionHasErrors();
Я получаю сообщение об ошибке, причина "ошибки" не определена в сеансе.
Если я использую этот код:
$response = $this->call('POST', 'offers', array(
'_token' => csrf_token(),
'client_id' => 1,
'network_id' => 2,
'royalty' => 50
));
Я перенаправлен на страницу входа, так как пользователь не аутентифицирован.