assertStatus(200) ->assertSeeText('Willkommen zurück') ->assertSeeText('Anmelden') ->assertSeeText('Magic-Link per E-Mail senden') ->assertSeeText('Mit Passkey anmelden') ->assertSeeText('Alle Systeme aktiv') ->assertSeeText('Verwalte') ->assertSeeText('WordPress-Sites') ->assertSee('clu-glass', false) ->assertSee('clu-brand-mark', false) ->assertSee('clu-term-card', false) ->assertSee('clu-stat', false); }); it('mounts the Volt component without errors', function () { livewire('pages.auth.login') ->assertSet('form.email', '') ->assertSet('form.password', '') ->assertSet('form.remember', false); }); it('rejects empty credentials', function () { livewire('pages.auth.login') ->set('form.email', '') ->set('form.password', '') ->call('login') ->assertHasErrors(['form.email', 'form.password']); }); it('authenticates a user with valid credentials', function () { $user = User::factory()->create(['password' => bcrypt('hunter2-secret')]); livewire('pages.auth.login') ->set('form.email', $user->email) ->set('form.password', 'hunter2-secret') ->call('login') ->assertHasNoErrors() ->assertRedirect(route('dashboard', absolute: false)); expect(auth()->check())->toBeTrue(); }); it('rejects an invalid password', function () { $user = User::factory()->create(['password' => bcrypt('correct-password')]); livewire('pages.auth.login') ->set('form.email', $user->email) ->set('form.password', 'wrong-password') ->call('login') ->assertHasErrors('form.email'); expect(auth()->check())->toBeFalse(); });