7ff2dbb139
Build & Deploy / Build & Push Docker Image (push) Successful in 2m55s
Test / Type Check (all packages) (push) Successful in 54s
Build & Deploy / Deploy to VPS (push) Successful in 4s
Test / API Unit Tests (push) Failing after 48s
Test / Homepage Unit Tests (push) Successful in 43s
Test / Storefront Unit Tests (push) Failing after 40s
Test / Admin Unit Tests (push) Successful in 40s
Test / Dashboard Unit Tests (push) Failing after 42s
Test / API Integration Tests (push) Successful in 1m0s
31 lines
1008 B
TypeScript
31 lines
1008 B
TypeScript
import { beforeEach, describe, expect, it, vi } from 'vitest'
|
|
|
|
const cookieValues = vi.hoisted(() => new Map<string, string>())
|
|
|
|
vi.mock('next/headers', () => ({
|
|
cookies: async () => ({
|
|
get: (name: string) => {
|
|
const value = cookieValues.get(name)
|
|
return value === undefined ? undefined : { value }
|
|
},
|
|
}),
|
|
}))
|
|
|
|
import { getCarplaceLanguage } from './i18n.server'
|
|
import { SHARED_LANGUAGE_COOKIE } from './i18n'
|
|
|
|
describe('getCarplaceLanguage', () => {
|
|
beforeEach(() => cookieValues.clear())
|
|
|
|
it.each(['en', 'fr', 'ar'] as const)('reads the shared %s language cookie', async (language) => {
|
|
cookieValues.set(SHARED_LANGUAGE_COOKIE, language)
|
|
await expect(getCarplaceLanguage()).resolves.toBe(language)
|
|
})
|
|
|
|
it('defaults to English when the shared cookie is absent or invalid', async () => {
|
|
await expect(getCarplaceLanguage()).resolves.toBe('en')
|
|
cookieValues.set(SHARED_LANGUAGE_COOKIE, 'es')
|
|
await expect(getCarplaceLanguage()).resolves.toBe('en')
|
|
})
|
|
})
|