import { describe, expect, it } from "vitest";
import { render, screen } from "@testing-library/react";
import userEvent from "@testing-library/user-event";
import { axe } from "vitest-axe";
import { Popover } from "./Popover";
describe("Popover", () => {
it("trigger ouvre + escape ferme", async () => {
const user = userEvent.setup();
render(
Open}>
Contenu
,
);
await user.click(screen.getByText("Open"));
expect(await screen.findByText("Contenu")).toBeInTheDocument();
await user.keyboard("{Escape}");
await new Promise((r) => setTimeout(r, 0));
expect(screen.queryByText("Contenu")).not.toBeInTheDocument();
});
it("a11y axe-core (fermé)", async () => {
const { container } = render(
Open}>
Contenu
,
);
expect(await axe(container)).toHaveNoViolations();
});
});