annotate tests/Feature/Auth/AuthenticationTest.php @ 2:90296614b7e2 default tip

Adding in the base for the clients table
author luka
date Thu, 28 Aug 2025 20:55:40 -0400
parents 9d7dcd54c677
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
1 <?php
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
2
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
3 namespace Tests\Feature\Auth;
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
4
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
5 use App\Models\User;
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
6 use Illuminate\Foundation\Testing\RefreshDatabase;
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
7 use Tests\TestCase;
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
8
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
9 class AuthenticationTest extends TestCase
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
10 {
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
11 use RefreshDatabase;
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
12
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
13 public function test_login_screen_can_be_rendered(): void
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
14 {
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
15 $response = $this->get('/login');
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
16
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
17 $response->assertStatus(200);
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
18 }
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
19
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
20 public function test_users_can_authenticate_using_the_login_screen(): void
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
21 {
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
22 $user = User::factory()->create();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
23
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
24 $response = $this->post('/login', [
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
25 'email' => $user->email,
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
26 'password' => 'password',
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
27 ]);
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
28
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
29 $this->assertAuthenticated();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
30 $response->assertRedirect(route('dashboard', absolute: false));
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
31 }
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
32
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
33 public function test_users_can_not_authenticate_with_invalid_password(): void
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
34 {
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
35 $user = User::factory()->create();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
36
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
37 $this->post('/login', [
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
38 'email' => $user->email,
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
39 'password' => 'wrong-password',
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
40 ]);
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
41
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
42 $this->assertGuest();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
43 }
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
44
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
45 public function test_users_can_logout(): void
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
46 {
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
47 $user = User::factory()->create();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
48
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
49 $response = $this->actingAs($user)->post('/logout');
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
50
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
51 $this->assertGuest();
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
52 $response->assertRedirect('/');
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
53 }
9d7dcd54c677 Initial Commit and package setup
luka
parents:
diff changeset
54 }