devextreme
Version:
JavaScript/TypeScript Component Suite for Responsive Web Development
62 lines (61 loc) • 2.55 kB
JavaScript
/**
* DevExtreme (cjs/__internal/scheduler/view_model/preparation/prepare_appointments.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/
*/
;
var _globals = require("@jest/globals");
var _appointment_data_accessor = require("../../../scheduler/__mock__/appointment_data_accessor.mock");
var _timezone_calculator = require("../../r1/timezone_calculator");
var _prepare_appointments = require("./prepare_appointments");
const schedulerMock = {
currentView: {
type: "agenda"
},
getViewOption: name => ({
cellDuration: 30,
allDayPanelMode: "all"
} [name]),
_dataAccessors: _appointment_data_accessor.mockAppointmentDataAccessor,
timeZoneCalculator: (0, _timezone_calculator.createTimeZoneCalculator)("")
};
(0, _globals.describe)("prepareAppointments", () => {
(0, _globals.it)("should return empty array if no dataItems", () => {
let result = (0, _prepare_appointments.prepareAppointments)(schedulerMock, void 0);
(0, _globals.expect)(result).toEqual([]);
result = (0, _prepare_appointments.prepareAppointments)(schedulerMock, []);
(0, _globals.expect)(result).toEqual([])
});
(0, _globals.it)("should return empty array without startDate", () => {
const data = [{
endDate: new Date(2021, 9, 9)
}];
const result = (0, _prepare_appointments.prepareAppointments)(schedulerMock, data);
(0, _globals.expect)(result).toEqual([])
});
(0, _globals.it)("should correct endDate value if it doesn't set", () => {
const data = [{
startDate: new Date(2021, 9, 9, 17)
}];
const expectedResult = {
allDay: false,
source: {
startDate: data[0].startDate.getTime(),
endDate: data[0].startDate.getTime() + 18e5
},
hasRecurrenceRule: false,
itemData: Object.assign({}, data[0], {
endDate: new Date(2021, 9, 9, 17, 30)
}),
recurrenceException: void 0,
recurrenceRule: void 0,
visible: true,
disabled: false
};
const result = (0, _prepare_appointments.prepareAppointments)(schedulerMock, data);
(0, _globals.expect)(result).toEqual([expectedResult])
})
});