2020-01-26 23:56:36 +01:00
|
|
|
import { load } from "./testAppDef";
|
|
|
|
|
|
|
|
describe("controlFlow", () => {
|
|
|
|
|
|
|
|
it("should display simple div, with always true render function", async () => {
|
|
|
|
|
|
|
|
const {dom} = await load({
|
|
|
|
_component: "testlib/div",
|
|
|
|
className: "my-test-class",
|
|
|
|
_id: "always_render"
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(dom.window.document.body.children.length).toBe(1);
|
|
|
|
const child = dom.window.document.body.children[0];
|
|
|
|
expect(child.className).toBe("my-test-class");
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
it("should not display div, with always false render function", async () => {
|
|
|
|
|
|
|
|
const {dom} = await load({
|
|
|
|
_component: "testlib/div",
|
|
|
|
className: "my-test-class",
|
|
|
|
_id: "never_render"
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(dom.window.document.body.children.length).toBe(0);
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
it("should display 3 divs in a looped render function", async () => {
|
|
|
|
|
|
|
|
const {dom} = await load({
|
|
|
|
_component: "testlib/div",
|
|
|
|
className: "my-test-class",
|
|
|
|
_id: "three_clones"
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(dom.window.document.body.children.length).toBe(3);
|
|
|
|
|
|
|
|
const child0 = dom.window.document.body.children[0];
|
|
|
|
expect(child0.className).toBe("my-test-class");
|
|
|
|
|
|
|
|
const child1 = dom.window.document.body.children[1];
|
|
|
|
expect(child1.className).toBe("my-test-class");
|
|
|
|
|
|
|
|
const child2 = dom.window.document.body.children[2];
|
|
|
|
expect(child2.className).toBe("my-test-class");
|
|
|
|
|
|
|
|
})
|
|
|
|
|
2020-01-27 10:01:32 +01:00
|
|
|
it("should display 3 div, in a looped render, as children", async () => {
|
|
|
|
const {dom} = await load({
|
|
|
|
_component: "testlib/div",
|
|
|
|
_children: [
|
|
|
|
{
|
|
|
|
_component: "testlib/div",
|
|
|
|
className: "my-test-class",
|
|
|
|
_id: "three_clones"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
});
|
|
|
|
|
|
|
|
expect(dom.window.document.body.children.length).toBe(1);
|
|
|
|
|
|
|
|
const rootDiv = dom.window.document.body.children[0];
|
|
|
|
expect(rootDiv.children.length).toBe(3);
|
|
|
|
|
|
|
|
expect(rootDiv.children[0].className).toBe("my-test-class");
|
|
|
|
expect(rootDiv.children[1].className).toBe("my-test-class");
|
|
|
|
expect(rootDiv.children[2].className).toBe("my-test-class");
|
|
|
|
})
|
|
|
|
|
2020-01-26 23:56:36 +01:00
|
|
|
});
|