UNPKG

@etsoo/toolpad

Version:

Dashboard framework extention based on Toolpad Core

37 lines (36 loc) 1.3 kB
import { jsx as _jsx } from "react/jsx-runtime"; import * as React from "react"; import { describe, test, expect, vi } from "vitest"; import { render, screen } from "@testing-library/react"; import { AppProvider } from "./AppProvider"; vi.mock("next/navigation", () => { const searchParams = new URLSearchParams(); const push = () => { }; const replace = () => { }; const router = { push, replace }; return { usePathname: () => "/", useSearchParams: () => searchParams, useRouter: () => router }; }); vi.mock("next/router", () => ({ useRouter: () => null })); vi.mock("next/compat/router", () => ({ useRouter: () => null })); function RouterTest({ children }) { const [pathname, setPathname] = React.useState("/page"); const router = React.useMemo(() => { return { pathname, searchParams: new URLSearchParams(), navigate: (path) => setPathname(String(path)) }; }, [pathname]); return _jsx(AppProvider, { router: router, children: children }); } describe("Nextjs AppProvider", () => { test("renders content correctly", async () => { // placeholder test render(_jsx(RouterTest, { children: "Hello" })); expect(screen.getByText("Hello")).toBeTruthy(); }); });