import { describe, it, expect, afterEach } from "vitest"; import { renderWithProviders as render, screen, cleanup, within, } from "../utils/test-utils"; import { fireEvent } from "@testing-library/react"; import "@testing-library/jest-dom/vitest"; import { MembershipMethodsScreen } from "../../app/(app)/create/screens/card/MembershipMethodsScreen"; afterEach(() => { cleanup(); }); describe("MembershipMethodsScreen", () => { it("opens section fields editable without Customize", async () => { render(); fireEvent.click( screen.getAllByRole("button", { name: /Open Access: Maximum inclusion/, })[0], ); const dialog = await screen.findByRole("dialog"); const fields = within(dialog).getAllByRole("textbox"); expect(fields.length).toBeGreaterThan(0); for (const field of fields) { expect(field).toBeEnabled(); } fireEvent.click( within(dialog).getByRole("button", { name: "More options" }), ); expect( screen.getByRole("menuitem", { name: "Customize" }), ).toBeInTheDocument(); }); });