@crossed/primitive
Version:
A universal & performant styling library for React Native, Next.js & React
40 lines (39 loc) • 1.66 kB
JavaScript
;
var import_jsx_runtime = require("react/jsx-runtime");
var import_test = require("@crossed/test");
var import_VisibilityHidden = require("../VisibilityHidden");
describe("VisibilityHidden", () => {
const oldError = console.error;
beforeEach(() => {
console.error = jest.fn();
});
afterEach(() => {
console.error = oldError;
});
test("children is string", () => {
try {
(0, import_test.render)(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VisibilityHidden.VisibilityHidden, { children: "hello" }));
} catch (e) {
expect(e.message).toBe(`"VisibilityHidden" not accept string children`);
}
});
test("show", async () => {
(0, import_test.render)(
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VisibilityHidden.VisibilityHidden, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { role: "main" }) })
);
const child = await import_test.screen.getByRole("main");
expect(child).toHaveAttribute("aria-hidden", "false");
});
test("hidden", async () => {
(0, import_test.render)(
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_VisibilityHidden.VisibilityHidden, { hidden: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { role: "main" }) })
);
const child = await import_test.screen.getByRole("main", { hidden: true });
expect(child).toHaveAttribute("aria-hidden", "true");
expect(child).toHaveAttribute(
"style",
"position: absolute; overflow: hidden; clip: rect(0px, 0px, 0px, 0px); white-space: nowrap; word-wrap: normal;"
);
});
});
//# sourceMappingURL=VisibilityHidden.spec.js.map