From 5d4fb0b8d3bf524207bb976a4468c69dc520da7a Mon Sep 17 00:00:00 2001 From: Tajim Date: Sun, 6 Sep 2026 19:50:08 +0600 Subject: [PATCH] fix(auth): redirect authenticated users to /me when accessing login routes --- app/Http/Controllers/AuthController.php | 4 ++-- tests/Feature/AuthenticationTest.php | 20 ++++++++++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index 7c8b22d5..e2f7f379 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -20,7 +20,7 @@ class AuthController extends Controller public function index() { if (Auth::check()) { - return redirect()->route('admin.index'); + return redirect()->route('me'); } return Inertia::render('auth/Login'); @@ -29,7 +29,7 @@ public function index() public function redirectToGoogle(Request $request) { if (Auth::check()) { - return redirect()->route('admin.index'); + return redirect()->route('me'); } if ($request->filled('redirect')) { diff --git a/tests/Feature/AuthenticationTest.php b/tests/Feature/AuthenticationTest.php index 14f9e2f3..3b2e93db 100644 --- a/tests/Feature/AuthenticationTest.php +++ b/tests/Feature/AuthenticationTest.php @@ -8,13 +8,29 @@ use Illuminate\Support\Facades\Storage; use Laravel\Socialite\Facades\Socialite; -test('login page is accessible', function () { +test('login page is accessible for guests', function () { $response = $this->get('/login'); $response->assertStatus(200); }); -test('redirects to google for authentication', function () { +test('login page redirects authenticated users to /me', function () { + $user = User::factory()->create(); + + $response = $this->actingAs($user)->get('/login'); + + $response->assertRedirect(route('me')); +}); + +test('google auth redirects authenticated users to /me', function () { + $user = User::factory()->create(); + + $response = $this->actingAs($user)->get(route('auth.google')); + + $response->assertRedirect(route('me')); +}); + +test('redirects to google for authentication for guests', function () { $response = $this->get(route('auth.google')); $response->assertRedirect();