reshow-build
Version:
React super cloneElement and createElement
28 lines (27 loc) • 1.32 kB
JavaScript
var _span, _span2, _div, _div2;
// @ts-check
import * as React from "react";
var {
createElement,
cloneElement
} = React;
import { expect } from "chai";
import { render } from "reshow-unit";
import build from "../index.mjs";
import { jsx as _jsx } from "react/jsx-runtime";
describe("Test build react", function () {
it("test with null props", function () {
var wrap = render(/**@type React.ReactElement*/build("div")(null, _span || (_span = /*#__PURE__*/_jsx("span", {}))));
expect(wrap.html()).to.equal("<div><span></span></div>");
});
it("test with undefined props", function () {
var wrap = render(/**@type React.ReactElement*/build("div")(undefined, _span2 || (_span2 = /*#__PURE__*/_jsx("span", {}))));
expect(wrap.html()).to.equal("<div><span></span></div>");
});
it("should have same behavior with createElement", function () {
expect(render(/**@type React.ReactElement*/build("div")(null, "span")).html()).to.equal(render(createElement("div", null, "span")).html());
});
it("should have same behavior with cloneElement", function () {
expect(render(/**@type React.ReactElement*/build(_div || (_div = /*#__PURE__*/_jsx("div", {})))(null, "span")).html()).to.equal(render(cloneElement(_div2 || (_div2 = /*#__PURE__*/_jsx("div", {})), undefined, "span")).html());
});
});