UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

53 lines (52 loc) 2.55 kB
/** * DevExtreme (cjs/__internal/core/utils/conditional_invoke.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 _conditional_invoke = require("./conditional_invoke"); (0, _globals.describe)("invokeConditionally", (() => { [false, true].forEach((isPromise => { [{ cancelResult: false, expectedCallback: "callback" }, { cancelResult: true, expectedCallback: "cancelCallback" }].forEach((_ref => { let { cancelResult: cancelResult, expectedCallback: expectedCallback } = _ref; (0, _globals.it)(`should invoke ${expectedCallback} (isPromise=${isPromise}, cancelResult=${cancelResult})`, (async () => { const callback = _globals.jest.fn(); const cancelCallback = _globals.jest.fn(); (0, _conditional_invoke.invokeConditionally)(isPromise ? Promise.resolve(cancelResult) : cancelResult, callback, cancelCallback); await new Promise(process.nextTick); if ("callback" === expectedCallback) { (0, _globals.expect)(callback).toHaveBeenCalled(); (0, _globals.expect)(cancelCallback).not.toHaveBeenCalled() } else { (0, _globals.expect)(cancelCallback).toHaveBeenCalled(); (0, _globals.expect)(callback).not.toHaveBeenCalled() } })) })) })); (0, _globals.it)("should invoke the callback when cancelResult is a rejected promise", (async () => { const callback = _globals.jest.fn(); const cancelCallback = _globals.jest.fn(); (0, _conditional_invoke.invokeConditionally)(Promise.reject(new Error("test error")), callback, cancelCallback); await new Promise(process.nextTick); (0, _globals.expect)(cancelCallback).not.toHaveBeenCalled(); (0, _globals.expect)(callback).toHaveBeenCalled() })); (0, _globals.it)("should not throw when cancelCallback is undefined and cancelResult is true", (() => { const callback = _globals.jest.fn(); (0, _globals.expect)((() => (0, _conditional_invoke.invokeConditionally)(true, callback))).not.toThrow() })) }));