get('/login') ->assertOk() ->assertSee('Zaloguj się kontem domenowym') ->assertSee('Zaloguj'); } public function test_login_screen_has_language_and_theme_switchers(): void { $this->get('/login') ->assertOk() ->assertSee('id="themeToggle"', escape: false) ->assertSee(route('locale.switch', 'pl'), escape: false) ->assertSee(route('locale.switch', 'en'), escape: false); } public function test_switching_language_persists_and_translates_the_ui(): void { $this->get('/language/en')->assertRedirect(); $this->assertSame('en', session('locale')); $this->get('/login') ->assertOk() ->assertSee('Sign in with your domain account') ->assertDontSee('Zaloguj się kontem domenowym'); $this->get('/language/pl')->assertRedirect(); $this->assertSame('pl', session('locale')); $this->get('/login')->assertSee('Zaloguj się kontem domenowym'); } public function test_unknown_locale_is_rejected(): void { $this->get('/language/de')->assertNotFound(); $this->get('/language/xx')->assertNotFound(); } public function test_locale_switch_route_works_without_authentication(): void { $this->get('/language/en')->assertRedirect(); $this->assertGuest('ldap'); } }