import { decideLandingGuard } from '../../frontend/src/app/core/guards/landing.guard.decision'; describe('decideLandingGuard', () => { const router = { createUrlTree: jest.fn((commands: string[]) => ({ kind: 'UrlTree', commands })), }; beforeEach(() => { (router.createUrlTree as jest.Mock).mockClear(); }); it('redirects to /bootstrap when not initialized', () => { const r = decideLandingGuard({ initialized: false, isAuthenticated: false }, router as any); expect(router.createUrlTree).toHaveBeenCalledWith(['/bootstrap']); expect((r as any).commands).toEqual(['/bootstrap']); }); it('redirects to / when initialized and authenticated', () => { const r = decideLandingGuard({ initialized: true, isAuthenticated: true }, router as any); expect(router.createUrlTree).toHaveBeenCalledWith(['/']); expect((r as any).commands).toEqual(['/']); }); it('allows when initialized and not authenticated', () => { expect(decideLandingGuard({ initialized: true, isAuthenticated: false }, router as any)).toBe(true); }); });