Mam taki test i zwraca mi kod 302 z opisem
Expected response status code [200] but received 302.
Failed asserting that 200 is identical to 302.
Patrzyłem co może być tego przyczyną i ludzie pisali, że może to być spowodowane przekierowaniem na formularz logowania żeby sprawdzić czy użytkownik jest uwierzytelniony. Jedynym rozwiązaniem jakie widziałem było dodanie $this->actingAs($user)
jednak po dodaniu tego nadal nie działa.
public function test_user_can_store_employee()
{
$this->withoutExceptionHandling();
$user = User::factory()->create();
$this->actingAs($user);
$response = $this->json('POST','/employee', [
'name' => 'Jan',
'surname' => 'Kowalski',
'phone' => '501928177',
'position' => 'praktykant',
'salary' => 3000,
'user_id' => $user->id
]);
$response->assertStatus(200);
}
Drugim pytaniem czy podczas testowania CRUDa wszędzie dawać 200 i tylko przy błędnej walidacji zwracać 422? Czy są różne szkoły?