import {describe, expect, it} from 'vitest'; import {isNavActive, NAV_ITEMS} from './navItems.js'; const item = (to) => NAV_ITEMS.find((candidate) => candidate.to === to); describe('isNavActive', () => { it('theOwnPathAndItsChildrenAreActive', () => { expect(isNavActive(item('/library'), '/library')).toBe(true); expect(isNavActive(item('/library'), '/library/220')).toBe(true); }); it('thePagesOfTheLibraryKeepLibraryActive', () => { for (const path of ['/wishlist', '/backlog', '/search']) expect(isNavActive(item('/library'), path)).toBe(true); }); it('theOldFollowingUrlKeepsCommunityActive', () => { expect(isNavActive(item('/community'), '/following')).toBe(true); }); it('aPathWithTheSamePrefixIsNotActive', () => { expect(isNavActive(item('/library'), '/library-x')).toBe(false); expect(isNavActive(item('/stats'), '/dashboard')).toBe(false); }); });