import { describe, expect, it, vi } from "vitest"; import { render, screen } from "@testing-library/react"; vi.mock("next/font/google", () => ({ Cascadia_Mono: () => ({ variable: "font-test" }), })); vi.mock("@/lib/i18n/get-locale", () => ({ getLocale: async () => "en" as const, })); import RootLayout, { generateMetadata } from "@/app/layout"; describe("generateMetadata", () => { it("builds site metadata for the locale", async () => { const meta = await generateMetadata(); expect(meta.description).toBeTruthy(); }); }); describe("RootLayout", () => { it("renders children inside the locale shell", async () => { render(await RootLayout({ children:

child

, params: Promise.resolve({}) })); expect(screen.getByText("child")).toBeDefined(); expect(document.documentElement.lang).toBe("en"); }); });