geo/frontend/vitest.setup.ts

44 lines
1.2 KiB
TypeScript

import "@testing-library/jest-dom/vitest";
// ── Mock Next.js modules ────────────────────────────────────────────────────
vi.mock("next/navigation", () => ({
useRouter: () => ({
push: vi.fn(),
replace: vi.fn(),
prefetch: vi.fn(),
back: vi.fn(),
refresh: vi.fn(),
}),
usePathname: () => "/",
useSearchParams: () => new URLSearchParams(),
useParams: () => ({}),
}));
vi.mock("next-auth/react", () => ({
useSession: () => ({
data: { accessToken: "mock-token", user: { name: "Test User" } },
status: "authenticated",
}),
getSession: vi.fn(() =>
Promise.resolve({ accessToken: "mock-session-token" })
),
signIn: vi.fn(),
signOut: vi.fn(),
}));
vi.mock("next-auth", () => ({
default: vi.fn(),
}));
// ── Mock next/headers ────────────────────────────────────────────────────────
vi.mock("next/headers", () => ({
cookies: () => ({
get: vi.fn(),
set: vi.fn(),
delete: vi.fn(),
}),
headers: () => new Headers(),
}));