UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

88 lines (87 loc) 3.32 kB
/** * DevExtreme (esm/__internal/grids/new/card_view/content_view/content/card/header.test.js) * Version: 25.1.3 * Build date: Wed Jun 25 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { createVNode, createComponentVNode } from "inferno"; import { describe, expect, it } from "@jest/globals"; import { render } from "inferno"; import { CardHeader, CLASSES } from "./header"; describe("CardHeader", (() => { it("should render with default properties", (() => { const container = document.createElement("div"); render(createComponentVNode(2, CardHeader, { card: {}, visible: true, items: [{ location: "before", text: "Test Header" }] }), container); const header = container.querySelector(`.${CLASSES.cardHeader}`); expect(header).not.toBeNull(); const headerItem = container.querySelector(".dx-toolbar-item"); expect(headerItem).not.toBeNull(); expect(null === headerItem || void 0 === headerItem ? void 0 : headerItem.textContent).toBe("Test Header") })); it("should not render when visible is false", (() => { const container = document.createElement("div"); render(createComponentVNode(2, CardHeader, { card: {}, visible: false }), container); const header = container.querySelector(CLASSES.cardHeader); expect(header).toBeNull() })); it("should render with caption from captionExpr", (() => { const container = document.createElement("div"); render(createComponentVNode(2, CardHeader, { visible: true, captionExpr: "name", card: { name: "Card Title" } }), container); const captionItem = container.querySelector(".dx-toolbar-item"); expect(captionItem).not.toBeNull(); expect(null === captionItem || void 0 === captionItem ? void 0 : captionItem.textContent).toBe("Card Title") })); it("should render with a custom template", (() => { const container = document.createElement("div"); render(createComponentVNode(2, CardHeader, { visible: true, card: {}, template: () => createVNode(1, "div", "custom-header", "Custom Header", 16) }), container); const customHeader = container.querySelector(".custom-header"); expect(customHeader).not.toBeNull(); expect(null === customHeader || void 0 === customHeader ? void 0 : customHeader.textContent).toBe("Custom Header") })); it("should render a selection checkbox", (() => { const container = document.createElement("div"); render(createComponentVNode(2, CardHeader, { visible: true, isCheckBoxesRendered: true, card: { name: "Card Title" } }), container); const checkboxItem = container.querySelector(".dx-cardview-select-checkbox"); expect(checkboxItem).not.toBeNull() })) }));