示例#1
0
        it('limit updatable start and end.', function() {
            var oneHour = datetime.millisecondsFrom('hour', 1);
            baseControllerMock.schedules.items['20'].start = new TZDate(2015, 4, 1);
            baseControllerMock.schedules.items['20'].start = new TZDate(2015, 4, 1, 0, 30);
            baseControllerMock.schedules.items['20'].getStarts = function() {
                return new TZDate(2015, 4, 1)
            };
            baseControllerMock.schedules.items['20'].getEnds = function() {
                return new TZDate(2015, 4, 1, 0, 30)
            };
            baseControllerMock.schedules.items['20'].duration = function() {
                return new TZDate(30 * 60 * 1000);
            };

            var scheduleData = {
                targetModelID: 20,
                nearestRange: [oneHour, 0],
                relatedView: {
                    getDate: function() { return new TZDate(2015, 4, 1); }
                },
                currentView: {
                    getDate: function() { return new TZDate(2015, 4, 1); }
                }
            };

            TimeMove.prototype._updateSchedule.call(mockInstance, scheduleData);

            expect(mockInstance.fire).toHaveBeenCalledWith('beforeUpdateSchedule', {
                schedule: baseControllerMock.schedules.items[20],
                start: new TZDate(2015, 4, 1),
                end: new TZDate(2015, 4, 1, 0, 30)
            });

            baseControllerMock.updateSchedule.calls.reset();
            scheduleData.nearestRange = [0, datetime.millisecondsFrom('hour', 25)];
            TimeMove.prototype._updateSchedule.call(mockInstance, scheduleData);

            expect(mockInstance.fire).toHaveBeenCalledWith('beforeUpdateSchedule', {
                schedule: baseControllerMock.schedules.items[20],
                start: new TZDate(2015, 4, 1, 23, 29, 59),
                end: new TZDate(2015, 4, 1, 23, 59, 59)
            });
        });
示例#2
0
        it('update schedule model by schedule data.', function() {
            var oneHour = datetime.millisecondsFrom('hour', 1);
            var scheduleData = {
                targetModelID: 20,
                nearestRange: [0, oneHour],
                relatedView: {
                    getDate: function() { return new TZDate(2015, 4, 1); }
                },
                currentView: {
                    getDate: function() { return new TZDate(2015, 4, 1); }
                }
            };
            TimeMove.prototype._updateSchedule.call(mockInstance, scheduleData);

            expect(mockInstance.fire).toHaveBeenCalledWith('beforeUpdateSchedule', {
                schedule: baseControllerMock.schedules.items[20],
                start: new TZDate(2015, 4, 1, 10),
                end: new TZDate(2015, 4, 1, 11)
            });
        });
示例#3
0
 it('return false when supplied parameter is not supported', function() {
     expect(dt.millisecondsFrom('month', 24)).toBe(false);
 });
示例#4
0
 duration: function() {
     return new TZDate(datetime.millisecondsFrom('hour', 1));
 }
示例#5
0
 it('convert value to milliseconds', function() {
     expect(dt.millisecondsFrom('hour', 24)).toBe(86400000);
 });