UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

195 lines (192 loc) • 6.83 kB
/** * DevExtreme (cjs/__internal/grids/new/grid_core/search/options.integration.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/ */ "use strict"; var _globals = require("@jest/globals"); var _m_guid = require("../../../../core/m_guid"); var _widget = _interopRequireDefault(require("../../../../grids/new/card_view/widget")); var _inferno = require("inferno"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e } } const SELECTORS = { cardContent: "dx-cardview-card-content", searchPanel: "dx-cardview-search-panel", editorInput: "dx-texteditor-input" }; const setup = function() { let options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}; const container = document.createElement("div"); const cardView = new _widget.default(container, options); (0, _inferno.rerender)(); return { container: container, cardView: cardView } }; function getCardContent(container) { (0, _inferno.rerender)(); return container.querySelector(`.${SELECTORS.cardContent}`) }(0, _globals.describe)("Options", (() => { (0, _globals.beforeEach)((() => { _globals.jest.spyOn(_m_guid.Guid.prototype, "_normalize").mockReturnValue("guidmock") })); (0, _globals.afterEach)((() => { _globals.jest.spyOn(_m_guid.Guid.prototype, "_normalize").mockRestore() })); (0, _globals.it)("searchPanel.text (card contains match)", (async () => { const { container: container, cardView: cardView } = setup({ dataSource: [{ Name: "John Doe" }], columns: ["Name"], searchPanel: { text: "John" } }); await cardView.dataController.waitLoaded(); (0, _inferno.rerender)(); const content = getCardContent(container); (0, _globals.expect)(content).toMatchSnapshot() })); (0, _globals.it)("searchPanel.text (card not contains match)", (async () => { const { container: container, cardView: cardView } = setup({ dataSource: [{ Name: "John Doe" }], columns: ["Name"], searchPanel: { text: "ABC" } }); await cardView.dataController.waitLoaded(); (0, _inferno.rerender)(); const content = getCardContent(container); (0, _globals.expect)(content).toMatchSnapshot() })); (0, _globals.it)("searchPanel.highlightCaseSensitive = true", (async () => { const { container: container, cardView: cardView } = setup({ dataSource: [{ Name: "John Doe john" }], columns: ["Name"], searchPanel: { text: "john", highlightCaseSensitive: true } }); await cardView.dataController.waitLoaded(); const content = getCardContent(container); (0, _globals.expect)(content).toMatchSnapshot() })); (0, _globals.it)("searchPanel.highlightCaseSensitive = false", (() => { const { container: container } = setup({ dataSource: [{ Name: "John Doe john" }], columns: ["Name"], searchPanel: { text: "john", highlightCaseSensitive: false } }); const content = getCardContent(container); (0, _globals.expect)(content).toMatchSnapshot() })); (0, _globals.it)("searchPanel.highlightSearchText = false", (() => { const { container: container } = setup({ dataSource: [{ Name: "John Doe john" }], columns: ["Name"], searchPanel: { text: "john", highlightSearchText: false } }); const content = getCardContent(container); (0, _globals.expect)(content).toMatchSnapshot() })); (0, _globals.it)("searchPanel.width", (() => { const { container: container } = setup({ searchPanel: { visible: true, width: 333 } }); (0, _inferno.rerender)(); const searchPanel = container.querySelector(`.${SELECTORS.searchPanel}`); (0, _globals.expect)(searchPanel).not.toBeNull(); (0, _globals.expect)(null === searchPanel || void 0 === searchPanel ? void 0 : searchPanel.getAttribute("style")).toContain("width: 333px") })); (0, _globals.it)("searchPanel.placeholder", (() => { const { container: container } = setup({ searchPanel: { visible: true, placeholder: "Search here" } }); (0, _inferno.rerender)(); const searchPanel = container.querySelector(`.${SELECTORS.searchPanel}`); const searchInput = null === searchPanel || void 0 === searchPanel ? void 0 : searchPanel.querySelector(`.${SELECTORS.editorInput}`); (0, _globals.expect)(null === searchInput || void 0 === searchInput ? void 0 : searchInput.getAttribute("placeholder")).toContain("Search here") })); (0, _globals.it)("searchPanel.visible = false", (() => { const { container: container } = setup({ searchPanel: { visible: false } }); (0, _inferno.rerender)(); const searchPanel = container.querySelector(`.${SELECTORS.searchPanel}`); (0, _globals.expect)(searchPanel).toBeNull() })); (0, _globals.it)("searchPanel.searchVisibleColumnsOnly = true", (() => { const { container: container } = setup({ dataSource: [{ name: "John Doe john", lastName: "last name" }], columns: ["name", { dataField: "lastName", visible: false }], searchPanel: { visible: true, text: "last", searchVisibleColumnsOnly: true } }); (0, _inferno.rerender)(); const content = container.querySelector(`.${SELECTORS.cardContent}`); (0, _globals.expect)(content).toBeNull() })) }));