node-cron-expression
Version:
Declarative functional crontab expression builder
30 lines • 3.95 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const at_1 = require("./at");
const combine_1 = require("./combine");
const every_1 = require("./every");
const inMonth_1 = require("./inMonth");
const on_1 = require("./on");
describe('combine', () => {
it('should provide every hour at 30 minutes', () => {
expect(combine_1.combine(every_1.every(2).hours(), at_1.atMinute(30)).toString()).toBe('30 */2 * * *');
});
it('should provide every day at midnight', () => {
expect(combine_1.combine(at_1.atHour(0), at_1.atMinute(0)).toString()).toBe('0 0 * * *');
});
it('should provide every Thursday at midnight in July', () => {
expect(combine_1.combine(on_1.onDayOfTheWeek(5), at_1.atHour(0), inMonth_1.inMonth(7), at_1.atMinute(0)).toString()).toBe('0 0 * 7 5');
});
it('should provide every day at 2am', () => {
expect(combine_1.combine(at_1.atHour(2), at_1.atMinute(0)).toString()).toBe('0 2 * * *');
});
it('should provide every sunday at 2am', () => {
expect(combine_1.combine(on_1.onDayOfTheWeek(6), at_1.atHour(2), at_1.atMinute(0)).toString()).toBe('0 2 * * 6');
});
it('should combine different functions with different order', () => {
const expectedValue = '32 2 15 * 6';
expect(combine_1.combine(on_1.onDayOfTheWeek(6), on_1.onDayOfTheMonth(15), at_1.atHour(2), at_1.atMinute(32)).toString()).toBe(expectedValue);
expect(combine_1.combine(at_1.atHour(2), at_1.atMinute(32), on_1.onDayOfTheMonth(15), on_1.onDayOfTheWeek(6)).toString()).toBe(expectedValue);
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tYmluZS5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb21iaW5lLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2QkFBd0M7QUFDeEMsdUNBQW9DO0FBQ3BDLG1DQUFnQztBQUNoQyx1Q0FBb0M7QUFDcEMsNkJBQXVEO0FBRXZELFFBQVEsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO0lBQ3ZCLEVBQUUsQ0FBQyx5Q0FBeUMsRUFBRSxHQUFHLEVBQUU7UUFDakQsTUFBTSxDQUFDLGlCQUFPLENBQUMsYUFBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLGFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUM3RCxjQUFjLENBQ2YsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHNDQUFzQyxFQUFFLEdBQUcsRUFBRTtRQUM5QyxNQUFNLENBQUMsaUJBQU8sQ0FBQyxXQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsbURBQW1ELEVBQUUsR0FBRyxFQUFFO1FBQzNELE1BQU0sQ0FDSixpQkFBTyxDQUFDLG1CQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLGlCQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQzFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGlDQUFpQyxFQUFFLEdBQUcsRUFBRTtRQUN6QyxNQUFNLENBQUMsaUJBQU8sQ0FBQyxXQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsYUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxFQUFFO1FBQzVDLE1BQU0sQ0FBQyxpQkFBTyxDQUFDLG1CQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsV0FBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN4RSxXQUFXLENBQ1osQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHlEQUF5RCxFQUFFLEdBQUcsRUFBRTtRQUNqRSxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDcEMsTUFBTSxDQUNKLGlCQUFPLENBQ0wsbUJBQWMsQ0FBQyxDQUFDLENBQUMsRUFDakIsb0JBQWUsQ0FBQyxFQUFFLENBQUMsRUFDbkIsV0FBTSxDQUFDLENBQUMsQ0FBQyxFQUNULGFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FDYixDQUFDLFFBQVEsRUFBRSxDQUNiLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXRCLE1BQU0sQ0FDSixpQkFBTyxDQUNMLFdBQU0sQ0FBQyxDQUFDLENBQUMsRUFDVCxhQUFRLENBQUMsRUFBRSxDQUFDLEVBQ1osb0JBQWUsQ0FBQyxFQUFFLENBQUMsRUFDbkIsbUJBQWMsQ0FBQyxDQUFDLENBQUMsQ0FDbEIsQ0FBQyxRQUFRLEVBQUUsQ0FDYixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIn0=