Files
homepage/vitest.setup.js
T
shamoon f670f46526
Docker CI / Docker Build & Push (push) Has been cancelled
Lint / Linting Checks (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Release Drafter / Auto Label PR (push) Has been cancelled
Tests / vitest (1) (push) Has been cancelled
Tests / vitest (2) (push) Has been cancelled
Tests / vitest (3) (push) Has been cancelled
Tests / vitest (4) (push) Has been cancelled
Feature: homepage auth (#6769)
2026-06-12 11:15:58 -07:00

39 lines
1.5 KiB
JavaScript

import "@testing-library/jest-dom/vitest";
import { cleanup } from "@testing-library/react";
import { afterEach, vi } from "vitest";
afterEach(() => {
// Node-environment tests shouldn't require jsdom; guard cleanup accordingly.
if (typeof document !== "undefined") cleanup();
});
// Avoid NextAuth client-side fetches during unit tests.
vi.mock("next-auth/react", () => ({
SessionProvider: ({ children }) => children ?? null,
getProviders: vi.fn(async () => ({})),
}));
// implement a couple of common formatters mocked in next-i18next
vi.mock("next-i18next/pages", () => ({
// Keep app/page components importable in unit tests.
appWithTranslation: (Component) => Component,
useTranslation: () => ({
i18n: { language: "en" },
t: (key, opts) => {
if (key === "common.number") return String(opts?.value ?? "");
if (key === "common.percent") return String(opts?.value ?? "");
if (key === "common.bytes") return String(opts?.value ?? "");
if (key === "common.bbytes") return String(opts?.value ?? "");
if (key === "common.byterate") return String(opts?.value ?? "");
if (key === "common.bibyterate") return String(opts?.value ?? "");
if (key === "common.bitrate") return String(opts?.value ?? "");
if (key === "common.duration") return String(opts?.value ?? "");
if (key === "common.ms") return String(opts?.value ?? "");
if (key === "common.date") return String(opts?.value ?? "");
if (key === "common.relativeDate") return String(opts?.value ?? "");
return key;
},
}),
}));