1
This commit is contained in:
327
nodejs/node_modules/node-schedule/test/start-end-test.js
generated
vendored
Executable file
327
nodejs/node_modules/node-schedule/test/start-end-test.js
generated
vendored
Executable file
@ -0,0 +1,327 @@
|
||||
'use strict';
|
||||
|
||||
var sinon = require('sinon');
|
||||
var main = require('../package.json').main;
|
||||
var schedule = require('../' + main);
|
||||
|
||||
var clock;
|
||||
|
||||
module.exports = {
|
||||
setUp: function (cb) {
|
||||
clock = sinon.useFakeTimers();
|
||||
cb();
|
||||
},
|
||||
'RecurrenceRule': {
|
||||
'no endTime , startTime less than now': function (test) {
|
||||
test.expect(3);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
var rule = new schedule.RecurrenceRule();
|
||||
rule.second = null; // every second
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() - 2000),
|
||||
rule: rule
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no endTime , startTime greater than now': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
var rule = new schedule.RecurrenceRule();
|
||||
rule.second = null; // every second
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 2000),
|
||||
rule: rule
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime less than now': function (test) {
|
||||
test.expect(0);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
var rule = new schedule.RecurrenceRule();
|
||||
rule.second = null; // every second
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() - 2000),
|
||||
rule: rule
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime greater than now': function (test) {
|
||||
test.expect(2);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
var rule = new schedule.RecurrenceRule();
|
||||
rule.second = null; // every second
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: rule
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'has startTime and endTime': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
var rule = new schedule.RecurrenceRule();
|
||||
rule.second = null; // every second
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 1000),
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: rule
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
}
|
||||
},
|
||||
'Object Literal': {
|
||||
'no endTime , startTime less than now': function (test) {
|
||||
test.expect(3);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() - 2000),
|
||||
rule: { second: null }
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no endTime , startTime greater than now': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 2000),
|
||||
rule: { second: null }
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime less than now': function (test) {
|
||||
test.expect(0);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() - 2000),
|
||||
rule: { second: null }
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime greater than now': function (test) {
|
||||
test.expect(2);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: { second: null }
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'has startTime and endTime': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 1000),
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: { second: null }
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
}
|
||||
},
|
||||
'cron-style': {
|
||||
'no endTime , startTime less than now': function (test) {
|
||||
test.expect(3);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() - 2000),
|
||||
rule: '*/1 * * * * *'
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no endTime , startTime greater than now': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 2000),
|
||||
rule: '*/1 * * * * *'
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime less than now': function (test) {
|
||||
test.expect(0);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() - 2000),
|
||||
rule: '*/1 * * * * *'
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'no startTime , endTime greater than now': function (test) {
|
||||
test.expect(2);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: '*/1 * * * * *'
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
},
|
||||
'has startTime and endTime': function (test) {
|
||||
test.expect(1);
|
||||
|
||||
var job = new schedule.Job(function () {
|
||||
test.ok(true);
|
||||
});
|
||||
|
||||
job.schedule({
|
||||
start: new Date(Date.now() + 1000),
|
||||
end: new Date(Date.now() + 2000),
|
||||
rule: '*/1 * * * * *'
|
||||
});
|
||||
|
||||
setTimeout(function () {
|
||||
job.cancel();
|
||||
test.done();
|
||||
}, 3250);
|
||||
|
||||
clock.tick(3250);
|
||||
}
|
||||
},
|
||||
tearDown: function (cb) {
|
||||
clock.restore();
|
||||
cb();
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user