prev_date.js 928 B

1234567891011121314151617181920212223242526272829303132
  1. var test = require('tap').test;
  2. var CronExpression = require('../lib/expression');
  3. test('prev should match correctly (issue #98) when milliseconds are greater than 0', function(t) {
  4. var options = {
  5. currentDate: new Date('2017-06-13T18:21:25.002Z')
  6. };
  7. var interval = CronExpression.parse('*/5 * * * * *', options);
  8. var prev = interval.prev();
  9. t.equal(prev.getSeconds(), 25);
  10. t.end();
  11. });
  12. test('prev should match correctly (issue #98) when milliseconds are equal to 0', function(t) {
  13. var interval = CronExpression.parse('59 59 23 * * *',{
  14. currentDate : new Date('2012-12-26 14:38:53')
  15. });
  16. [25, 24, 23, 22].forEach(function(date) {
  17. var prev = interval.prev();
  18. t.equal(prev.getFullYear(), 2012);
  19. t.equal(prev.getMonth(), 11);
  20. t.equal(prev.getDate(), date);
  21. t.equal(prev.getHours(), 23);
  22. t.equal(prev.getMinutes(), 59);
  23. t.equal(prev.getSeconds(), 59);
  24. });
  25. t.end();
  26. });