import { render, screen } from "@testing-library/react"; import { PopoverRoot } from "./PopoverRoot"; import { PopoverContent } from "./PopoverContent"; global.ResizeObserver = jest.fn().mockImplementation(() => ({ observe: jest.fn(), unobserve: jest.fn(), disconnect: jest.fn(), })); describe("PopoverContent", () => { const customRender = (ui, contextProps) => { return render({ui}); }; test("is initially hidden", () => { customRender(Test, {}); expect(screen.queryByText("Test")).not.toBeInTheDocument(); }); test("renders visibly into the document", () => { customRender(Test, { open: true }); expect(screen.getByRole("dialog")).toBeVisible(); }); test("uses a number as sideOffset", () => { customRender(Test, { open: true, }); // eslint-disable-next-line testing-library/no-node-access expect(screen.getByRole("dialog").parentElement).toHaveStyle( "transform: translate(0, -200%)" ); }); });