2026-05-02 08:26:18 +12:00
|
|
|
import { describe, expect, it, vi } from 'vitest';
|
|
|
|
|
import { homepageContent } from '$lib/content/homepage';
|
|
|
|
|
|
2026-05-18 09:43:29 +12:00
|
|
|
const { getHomepageContent } = vi.hoisted(() => ({
|
|
|
|
|
getHomepageContent: vi.fn()
|
2026-05-02 08:26:18 +12:00
|
|
|
}));
|
|
|
|
|
|
|
|
|
|
vi.mock('$lib/server/content', () => ({
|
|
|
|
|
getHomepageContent
|
|
|
|
|
}));
|
|
|
|
|
|
|
|
|
|
import { load } from './+page.server';
|
|
|
|
|
|
2026-05-11 21:02:24 +12:00
|
|
|
function createLoadEvent(url = 'https://www.goodwalk.co.nz/') {
|
|
|
|
|
return {
|
|
|
|
|
url: new URL(url)
|
|
|
|
|
} as Parameters<typeof load>[0];
|
|
|
|
|
}
|
|
|
|
|
|
2026-05-02 08:26:18 +12:00
|
|
|
describe('home page server load', () => {
|
|
|
|
|
it('returns homepage content', async () => {
|
|
|
|
|
getHomepageContent.mockResolvedValue(homepageContent);
|
2026-05-07 21:47:42 +12:00
|
|
|
|
2026-05-11 21:02:24 +12:00
|
|
|
await expect(load(createLoadEvent())).resolves.toEqual({
|
|
|
|
|
siteVariant: 'marketing',
|
2026-05-18 09:43:29 +12:00
|
|
|
content: homepageContent
|
2026-05-07 21:47:42 +12:00
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
2026-05-18 09:43:29 +12:00
|
|
|
it('returns the onboarding variant on the onboarding host', async () => {
|
2026-05-07 21:47:42 +12:00
|
|
|
getHomepageContent.mockResolvedValue(homepageContent);
|
2026-05-02 08:26:18 +12:00
|
|
|
|
2026-05-18 09:43:29 +12:00
|
|
|
await expect(load(createLoadEvent('https://onboarding.goodwalk.co.nz/'))).resolves.toEqual({
|
|
|
|
|
siteVariant: 'onboarding',
|
|
|
|
|
isPreview: false
|
2026-05-02 08:26:18 +12:00
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
});
|