[FortifyRouteBootstrapper::class]]); $originalFortifyHome = config('fortify.home'); $originalFortifyRedirects = config('fortify.redirects'); Route::get('/home', function () { return true; })->name($homeRouteName = 'home'); Route::get('/welcome', function () { return true; })->name($welcomeRouteName = 'welcome'); FortifyRouteBootstrapper::$fortifyHome = $homeRouteName; FortifyRouteBootstrapper::$fortifyRedirectMap['login'] = $welcomeRouteName; expect(config('fortify.home'))->toBe($originalFortifyHome); expect(config('fortify.redirects'))->toBe($originalFortifyRedirects); FortifyRouteBootstrapper::$passTenantParameter = true; tenancy()->initialize($tenant = Tenant::create()); expect(config('fortify.home'))->toBe('http://localhost/home?tenant=' . $tenant->getTenantKey()); expect(config('fortify.redirects'))->toEqual(['login' => 'http://localhost/welcome?tenant=' . $tenant->getTenantKey()]); tenancy()->end(); expect(config('fortify.home'))->toBe($originalFortifyHome); expect(config('fortify.redirects'))->toBe($originalFortifyRedirects); FortifyRouteBootstrapper::$passTenantParameter = false; tenancy()->initialize($tenant); expect(config('fortify.home'))->toBe('http://localhost/home'); expect(config('fortify.redirects'))->toEqual(['login' => 'http://localhost/welcome']); tenancy()->end(); expect(config('fortify.home'))->toBe($originalFortifyHome); expect(config('fortify.redirects'))->toBe($originalFortifyRedirects); }); test('fortify route bootstrapper works with custom query parameter', function() { config([ 'tenancy.bootstrappers' => [FortifyRouteBootstrapper::class], 'tenancy.identification.resolvers.' . RequestDataTenantResolver::class . '.query_parameter' => 'team', ]); $originalFortifyHome = config('fortify.home'); $originalFortifyRedirects = config('fortify.redirects'); Route::get('/dashboard', function () { return true; })->name($homeRouteName = 'tenant.dashboard'); Route::get('/login', function () { return true; })->name($loginRouteName = 'tenant.login'); FortifyRouteBootstrapper::$fortifyHome = $homeRouteName; FortifyRouteBootstrapper::$fortifyRedirectMap['login'] = $loginRouteName; FortifyRouteBootstrapper::$passQueryParameter = true; $tenant = Tenant::create(); tenancy()->initialize($tenant); expect(config('fortify.home'))->toBe('http://localhost/dashboard?team=' . $tenant->id); expect(config('fortify.redirects'))->toEqual(['login' => 'http://localhost/login?team=' . $tenant->id]); tenancy()->end(); expect(config('fortify.home'))->toBe($originalFortifyHome); expect(config('fortify.redirects'))->toBe($originalFortifyRedirects); });