UNPKG

react-conditional-components-renderer

Version:
39 lines (38 loc) 2.56 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importDefault(require("react")); const react_2 = require("@testing-library/react"); const Switch_1 = __importDefault(require("../Switch")); const Case_1 = __importDefault(require("../Case")); describe("<Switch />", () => { test(`should render A component when switch case be A`, () => { const { getByText } = (0, react_2.render)(react_1.default.createElement(Switch_1.default, { case: "a", default: react_1.default.createElement("div", null, "Show default component") }, react_1.default.createElement(Case_1.default, { identifier: "a" }, react_1.default.createElement("div", null, "Show A component")), react_1.default.createElement(Case_1.default, { identifier: "b" }, react_1.default.createElement("div", null, "Show B component")))); const elementText = getByText(/Show A component/i); expect(elementText).toBeTruthy(); }); test(`should render B component when switch case be B`, () => { const { getByText } = (0, react_2.render)(react_1.default.createElement(Switch_1.default, { case: "b", default: react_1.default.createElement("div", null, "Show default component") }, react_1.default.createElement(Case_1.default, { identifier: "a" }, react_1.default.createElement("div", null, "Show A component")), react_1.default.createElement(Case_1.default, { identifier: "b" }, react_1.default.createElement("div", null, "Show B component")))); const elementText = getByText(/Show B component/i); expect(elementText).toBeTruthy(); }); test(`should render Default component when none of switch case be match`, () => { const { getByText } = (0, react_2.render)(react_1.default.createElement(Switch_1.default, { case: "c", default: react_1.default.createElement("div", null, "Show default component") }, react_1.default.createElement(Case_1.default, { identifier: "a" }, react_1.default.createElement("div", null, "Show A component")), react_1.default.createElement(Case_1.default, { identifier: "b" }, react_1.default.createElement("div", null, "Show B component")))); const elementText = getByText(/Show default component/i); expect(elementText).toBeTruthy(); }); });