import { useLanguageStore } from '@/stores/language.store'; import { createTestingPinia } from '@pinia/testing'; import { setActivePinia, storeToRefs } from 'pinia'; describe('language store', () => { beforeEach(() => { setActivePinia(createTestingPinia()); }); it('should default to browser language when available', () => { const { language } = storeToRefs(useLanguageStore()); expect(language.value).toBe('en-US'); }); it('should use navigator.languages when available', () => { Object.defineProperty(window, 'navigator', { value: { languages: ['fr-FR'], language: 'fr-FR' }, }); const { language } = storeToRefs(useLanguageStore()); expect(language.value).toBe('fr-FR'); }); it('should use navigator.language when available', () => { Object.defineProperty(window, 'navigator', { value: { languages: [], language: 'en-US' }, }); const { language } = storeToRefs(useLanguageStore()); expect(language.value).toBe('en-US'); }); it('should fallback to "en" when navigator language is unavailable', () => { Object.defineProperty(window, 'navigator', { value: { language: undefined, languages: [] }, }); const { language } = storeToRefs(useLanguageStore()); expect(language.value).toBe('en'); }); });