import { describe, expect, it, vi } from "vitest"; import { render, screen } from "@testing-library/react"; import userEvent from "@testing-library/user-event"; import { CircleButton } from "./CircleButton"; describe("CircleButton", () => { it("calls onClick when clicked", async () => { const onClick = vi.fn(); render( x , ); await userEvent.click(screen.getByRole("button", { name: "Test" })); expect(onClick).toHaveBeenCalledTimes(1); }); it("applies the primary skin class for variant=primary", () => { render( ▶ , ); const btn = screen.getByRole("button", { name: "Play" }); expect(btn.className).toContain("player-disc-primary"); }); it("sets data-paused when prop is true", () => { render( ▶ , ); expect(screen.getByRole("button")).toHaveAttribute("data-paused", "true"); }); });