23 lines
942 B
TypeScript
23 lines
942 B
TypeScript
import { describe, it, expect } from 'vitest'
|
|
import { server, http, HttpResponse } from './test-setup'
|
|
import { api } from '@/api/client'
|
|
|
|
describe('API household header injection', () => {
|
|
it('sends X-Household-Slug when provider returns slug', async () => {
|
|
server.use(
|
|
http.get('*/api/v1/recipes', ({ request }) => {
|
|
// Should include our header set by client provider
|
|
const slug = request.headers.get('x-household-slug') || request.headers.get('X-Household-Slug')
|
|
if (!slug) return new HttpResponse(null, { status: 400 })
|
|
return HttpResponse.json([])
|
|
})
|
|
)
|
|
|
|
// Directly set provider without Vue router by calling internal setter via dynamic import
|
|
const { setHouseholdSlugProvider } = await import('@/api/client')
|
|
setHouseholdSlugProvider(() => 'the-smiths')
|
|
|
|
const res = await api.GET('/api/v1/recipes', { params: {} })
|
|
expect(res.response.ok).toBe(true)
|
|
})
|
|
})
|