UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

104 lines (103 loc) 3.88 kB
/** * DevExtreme (cjs/__internal/grids/new/card_view/content_view/content/card/card.events.test.js) * Version: 25.2.7 * Build date: Tue May 05 2026 * * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; var _inferno = require("inferno"); var _globals = require("@jest/globals"); var _card = require("./card"); const createMockCallback = () => ({ called: false, call() { this.called = true } }); const mockSelectCard = createMockCallback(); const mockOnDblClick = createMockCallback(); const mockOnClick = createMockCallback(); const mockOnHold = createMockCallback(); const props = { card: { fields: [{ column: { dataField: "Name", name: "Field", caption: "Field" }, value: "devextreme", text: "devextreme" }], key: 0 }, toolbar: [{ location: "before", widget: "dxCheckBox" }, { location: "before", text: "Card Header" }, { location: "after", widget: "dxButton", options: { icon: "edit", stylingMode: "text" } }, { location: "after", widget: "dxButton", options: { icon: "trash", stylingMode: "text" } }], cover: { src: "https://www.devexpress.com/support/demos/i/demo-thumbs/aspnetcore-grid.png", alt: "Card Cover", className: "card-cover" }, hoverStateEnabled: true, maxWidth: 300, width: 300, minWidth: 300, selectCard: mockSelectCard.call.bind(mockSelectCard), onDblClick: mockOnDblClick.call.bind(mockOnDblClick), onClick: mockOnClick.call.bind(mockOnClick), onHold: mockOnHold.call.bind(mockOnHold) }; (0, _globals.describe)("Callbacks", () => { (0, _globals.describe)("selectCard", () => { beforeEach(() => { mockSelectCard.called = false }); (0, _globals.describe)("when allowSelectOnClick = true", () => { (0, _globals.it)("should rise it", () => { const container = document.createElement("div"); const newProps = Object.assign({}, props, { elementRef: (0, _inferno.createRef)(), allowSelectOnClick: true }); (0, _inferno.render)((0, _inferno.normalizeProps)((0, _inferno.createComponentVNode)(2, _card.Card, Object.assign({}, newProps))), container); const cardElement = container.querySelector(`.${_card.CLASSES.card}`); null === cardElement || void 0 === cardElement || cardElement.dispatchEvent(new MouseEvent("click")); (0, _globals.expect)(mockSelectCard.called).toBe(true) }) }); (0, _globals.describe)("when allowSelectOnClick = false", () => { (0, _globals.it)("should not rise it", () => { const container = document.createElement("div"); const newProps = Object.assign({}, props, { elementRef: (0, _inferno.createRef)(), allowSelectOnClick: false }); (0, _inferno.render)((0, _inferno.normalizeProps)((0, _inferno.createComponentVNode)(2, _card.Card, Object.assign({}, newProps))), container); const cardElement = container.querySelector(`.${_card.CLASSES.card}`); null === cardElement || void 0 === cardElement || cardElement.dispatchEvent(new MouseEvent("click")); (0, _globals.expect)(mockSelectCard.called).toBe(false) }) }) }) });