import { deriveActiveSectionFromUrl } from '../../frontend/src/app/features/home/home.shell'; describe('deriveActiveSectionFromUrl', () => { it('returns Scoreboard for /scoreboard', () => { expect(deriveActiveSectionFromUrl('/scoreboard')).toBe('Scoreboard'); }); it('returns Blog for /blog', () => { expect(deriveActiveSectionFromUrl('/blog')).toBe('Blog'); }); it('returns Admin for /admin', () => { expect(deriveActiveSectionFromUrl('/admin')).toBe('Admin'); }); it('returns Challenges for / or /challenges', () => { expect(deriveActiveSectionFromUrl('/')).toBe('Challenges'); expect(deriveActiveSectionFromUrl('/challenges')).toBe('Challenges'); }); it('ignores query string and hash', () => { expect(deriveActiveSectionFromUrl('/scoreboard?x=1')).toBe('Scoreboard'); expect(deriveActiveSectionFromUrl('/blog#top')).toBe('Blog'); }); it('falls back to Challenges for empty url', () => { expect(deriveActiveSectionFromUrl('')).toBe('Challenges'); }); });