UNPKG

@crossed/primitive

Version:

A universal & performant styling library for React Native, Next.js & React

38 lines (37 loc) 1.36 kB
import { jsx } from "react/jsx-runtime"; import "@testing-library/jest-dom"; import { forwardRef } from "react"; import { createBadge } from "../index"; import { createBadgeMain } from "../Badge"; import { createBadgeText } from "../BadgeText"; import * as allExport from "../index"; const createBadgeMainMocked = createBadgeMain; const createBadgeTextMocked = createBadgeText; jest.mock("../Badge"); jest.mock("../BadgeText"); describe("createBadge", () => { beforeEach(() => { createBadgeMainMocked.mockImplementation((e) => e); createBadgeTextMocked.mockImplementation((e) => e); }); afterEach(() => { createBadgeMainMocked.mockReset(); createBadgeTextMocked.mockReset(); }); test("check exports", () => { expect(Object.keys(allExport)).toEqual(["createBadge"]); }); test("init", async () => { const Root = forwardRef((p, ref) => /* @__PURE__ */ jsx("p", { ...p, ref })); const Text = forwardRef((p, ref) => /* @__PURE__ */ jsx("p", { ...p, ref })); const Badge = createBadge({ Root, Text }); expect(createBadgeMainMocked).toHaveBeenCalledWith(Root); expect(createBadgeTextMocked).toHaveBeenCalledWith(Text); expect(Badge).toHaveProperty("displayName", "Badge"); expect(Badge.Text).toHaveProperty("displayName", "BadgeText"); }); }); //# sourceMappingURL=createBadge.spec.js.map