import { resolve } from "node:path"; import { describe, expect, it, vi } from "vitest"; import { fireEvent, render } from "@testing-library/preact"; import { snapshotFixtures } from "../../test/snapshot.js"; import { snapshotStylesheet } from "../../test/stylesheet.js"; import { ResultsPanel } from "./ResultsPanel.js"; import { fixtures } from "./ResultsPanel.fixtures.js"; snapshotFixtures(ResultsPanel, fixtures); describe("ResultsPanel", () => { it("offers a retry only in the error state, and reports it", () => { const onRetry = vi.fn(); const { getByRole, rerender, queryByRole } = render(); fireEvent.click(getByRole("button", { name: "Retry" })); expect(onRetry).toHaveBeenCalledTimes(1); rerender(); expect(queryByRole("button")).toBeNull(); }); }); snapshotStylesheet(resolve(__dirname, "./ResultsPanel.css"));