lotr-sut/sut/frontend/test/utils/walkthroughConfig.test.ts
Fellowship Scholar f6a5823439 init commit
2026-03-29 20:07:56 +00:00

38 lines
1.1 KiB
TypeScript

import { beforeEach, describe, expect, it } from 'vitest';
import {
WALKTHROUGH_SEEN_KEY,
clearWalkthroughSeen,
hasSeenWalkthrough,
markWalkthroughSeen,
walkthroughSteps,
} from '@/walkthrough/walkthroughConfig';
describe('walkthroughConfig', () => {
beforeEach(() => {
localStorage.removeItem(WALKTHROUGH_SEEN_KEY);
});
it('starts unseen by default', () => {
expect(hasSeenWalkthrough()).toBe(false);
});
it('marks walkthrough as seen', () => {
markWalkthroughSeen();
expect(hasSeenWalkthrough()).toBe(true);
});
it('clears walkthrough seen marker', () => {
markWalkthroughSeen();
clearWalkthroughSeen();
expect(hasSeenWalkthrough()).toBe(false);
});
it('defines required tour steps and routes', () => {
expect(walkthroughSteps.length).toBeGreaterThanOrEqual(5);
expect(walkthroughSteps[0].route).toBe('/dashboard');
expect(walkthroughSteps.some((step) => step.route.startsWith('/quests'))).toBe(true);
expect(walkthroughSteps.some((step) => step.route.startsWith('/map'))).toBe(true);
expect(walkthroughSteps.some((step) => step.route.startsWith('/inventory'))).toBe(true);
});
});