UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

107 lines (106 loc) 4.34 kB
/** * DevExtreme (cjs/__internal/scheduler/utils/data_accessor/appointment_data_accessor.test.js) * Version: 24.2.7 * Build date: Mon Apr 28 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 _appointment_data_accessor = require("./appointment_data_accessor"); (0, _globals.describe)("AppointmentDataAccessor", (() => { (0, _globals.it)("should get custom property", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "prop" }, false); (0, _globals.expect)(dataAccessor.get("prop", { prop: 1 })).toBe(1) })); (0, _globals.it)("should set custom property", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "prop" }, false); const obj = { prop: 1 }; dataAccessor.set("prop", obj, 2); (0, _globals.expect)(obj.prop).toBe(2) })); (0, _globals.it)("should get custom property by alias", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "alias" }, false); (0, _globals.expect)(dataAccessor.get("prop", { alias: 1 })).toBe(1) })); (0, _globals.it)("should set custom property by alias", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "alias" }, false); const obj = { alias: 1 }; dataAccessor.set("prop", obj, 2); (0, _globals.expect)(obj.alias).toBe(2) })); (0, _globals.it)("should get custom property by nested alias", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "nested.alias" }, false); (0, _globals.expect)(dataAccessor.get("prop", { nested: { alias: 1 } })).toBe(1) })); (0, _globals.it)("should set custom property by nested alias", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ propExpr: "nested.alias" }, false); const obj = { nested: { alias: 1 } }; dataAccessor.set("prop", obj, 2); (0, _globals.expect)(obj.nested.alias).toBe(2) })); (0, _globals.it)("should get serialized date property", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ startDateExpr: "startDate" }, true); (0, _globals.expect)(dataAccessor.get("startDate", { startDate: "2025/04/29" })).toEqual(new Date(2025, 3, 29)) })); (0, _globals.it)("should set serialized date as number", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ startDateExpr: "startDate" }, true, "number"); const obj = { startDate: "2025-04-30T15:00:00.000Z" }; dataAccessor.set("startDate", obj, new Date("2025-05-30T15:00:00.000Z")); (0, _globals.expect)(obj.startDate).toBe(17486172e5) })); (0, _globals.it)("should set serialized date as in initial object", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ startDateExpr: "startDate" }, true); const obj = { startDate: "2025/04/29" }; dataAccessor.set("startDate", obj, new Date("2025-05-30T15:00:00.000Z")); (0, _globals.expect)(obj.startDate).toBe("2025/05/30") })); (0, _globals.it)("should return correct access expression existence", (() => { const dataAccessor = new _appointment_data_accessor.AppointmentDataAccessor({ startDateExpr: "startDate" }, true); (0, _globals.expect)(dataAccessor.has("startDate")).toBe(true); (0, _globals.expect)(dataAccessor.has("endDate")).toBe(false) })) }));