get('/login'); $response->assertStatus(200); } public function test_user_is_redirected_to_login_when_unauthenticated(): void { $response = $this->get('/dashboard'); $response->assertRedirect('/login'); } public function test_authenticated_user_is_redirected_away_from_login(): void { $user = User::factory()->create(); $response = $this->actingAs($user)->get('/login'); $response->assertRedirect('/dashboard'); } public function test_user_can_logout(): void { $user = User::factory()->create(); $response = $this->actingAs($user)->post('/logout'); $response->assertRedirect('/login'); $this->assertGuest(); } public function test_login_fails_with_invalid_credentials(): void { User::factory()->create(['username' => 'testuser']); $response = $this->post('/login', [ 'username' => 'testuser', 'password' => 'wrongpassword', ]); $this->assertGuest(); } }