/// /// import { vi } from 'vitest'; import { writable } from 'svelte/store'; // Mock $app/navigation vi.mock('$app/navigation', () => ({ goto: vi.fn(() => Promise.resolve()), invalidate: vi.fn(() => Promise.resolve()), invalidateAll: vi.fn(() => Promise.resolve()), beforeNavigate: vi.fn(), afterNavigate: vi.fn() })); // Mock $app/stores vi.mock('$app/stores', () => ({ page: writable({ url: new URL('http://localhost'), params: {}, route: { id: null }, status: 200, error: null, data: {}, form: null }), navigating: writable(null), updated: { check: vi.fn(), subscribe: writable(false).subscribe } })); // Mock $app/environment vi.mock('$app/environment', () => ({ browser: true, dev: true, building: false })); // Mock $app/state (Svelte 5 runes-based state) vi.mock('$app/state', () => ({ page: { url: new URL('http://localhost'), params: {}, route: { id: null }, status: 200, error: null, data: {}, form: null } })); // Mock preferences store vi.mock('$lib/stores/preferences.svelte', () => ({ preferences: writable({ showCompleted: false, lastEntryType: 'thought' }) })); // Mock recent searches store vi.mock('$lib/stores/recentSearches', () => ({ addRecentSearch: vi.fn(), recentSearches: writable([]) }));