import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { renderToStaticMarkup } from "react-dom/server"; import { MemoryRouter } from "react-router"; import { describe, expect, it, vi } from "vitest"; import ContinueWatchingCard from "./ContinueWatchingCard"; const capturedMenuProps: Record[] = []; const startPlayback = () => {}; vi.mock("@/components/MediaItemMenu", () => ({ default: (props: Record) => { capturedMenuProps.push(props); return
; }, })); vi.mock("@/playback/watchPlaybackContext", () => ({ useWatchPlaybackController: () => ({ startPlayback }), })); describe("ContinueWatchingCard restart eligibility", () => { it("passes partial-progress restart eligibility to the media menu", () => { capturedMenuProps.length = 0; const queryClient = new QueryClient(); renderToStaticMarkup( , ); expect(capturedMenuProps[0]).toMatchObject({ contentId: "ep-001", mediaType: "episode", hasPartialProgress: true, }); }); });