diff --git a/tests/Feature/UserLogInTest.php b/tests/Feature/UserLogInTest.php new file mode 100644 index 0000000000..8419b7b614 --- /dev/null +++ b/tests/Feature/UserLogInTest.php @@ -0,0 +1,56 @@ +create([ + 'name' => 'User', + 'email' => 'user@abc.com', + 'password' => Hash::make($password), + ]); + + $response = $this->post('/login', [ + 'email' => $user->email, + 'password' => $password, + ]); + + $response->assertRedirect('/home'); + $this->assertAuthenticatedAs($user); + } + + public function test_user_login_failed_with_wrong_password() + { + $user = User::factory()->create([ + 'name' => 'admin', + 'email' => 'admin@abc.com', + 'password' => Hash::make('Admin'), + ]); + + $response = $this->from('/login')->post('/login', [ + 'email' => $user->email, + 'password' => 'invalid-password', + ]); + + $response->assertRedirect('/login'); + $response->assertSessionHasErrors('email'); + $this->assertTrue(session()->hasOldInput('email')); + $this->assertFalse(session()->hasOldInput('password')); + $this->assertGuest(); + } +}