|
5 | 5 |
|
6 | 6 | var assert = require('assert');
|
7 | 7 | var weekdayRange = require('../weekdayRange');
|
| 8 | +var vanillaGetUTCDay = Date.prototype.getUTCDay; |
| 9 | +var vanillaGetDay = Date.prototype.getDay; |
8 | 10 |
|
9 |
| -describe('weekdayRange(wd1, wd2, gmt)', function () { |
| 11 | +describe('hooks', function() { |
10 | 12 |
|
11 |
| - var tests = [ |
12 |
| - ]; |
| 13 | + before(function() { |
| 14 | + Date.prototype.getDay = function() { return 6; } // Setting local weekday as SAT(6) |
| 15 | + Date.prototype.getUTCDay = function() { return 5; } // Setting UTC weekday as FRI(5) |
| 16 | + }); |
13 | 17 |
|
14 |
| - tests.forEach(function (test) { |
15 |
| - var expected = test.pop(); |
16 |
| - it('should return `' + expected +'` for "' + test.join('", "') + '"', function () { |
17 |
| - assert.equal(expected, weekdayRange(test[0], test[1], test[2])); |
18 |
| - }); |
| 18 | + after(function() { |
| 19 | + Date.prototype.getUTCDay = vanillaGetUTCDay; |
| 20 | + Date.prototype.getDay = vanillaGetDay; |
19 | 21 | });
|
20 | 22 |
|
| 23 | + describe('weekdayRange(wd1, wd2, gmt)', function () { |
| 24 | + |
| 25 | + var tests = [ |
| 26 | + ["MON", "FRI", false], |
| 27 | + ["MON", "FRI", "GMT", true], |
| 28 | + ["SAT", true], |
| 29 | + ["SAT", "GMT", false], |
| 30 | + ["FRI", "MON", true], |
| 31 | + ["SAT", "MON", "GMT", false], |
| 32 | + ["SOME", "RANDOM", false], |
| 33 | + ["RANDOM", false], |
| 34 | + ["RANDOM", "VALUE", "IST", false], |
| 35 | + ]; |
| 36 | + |
| 37 | + tests.forEach(function (test) { |
| 38 | + var expected = test.pop(); |
| 39 | + it('should return `' + expected +'` for "' + test.join('", "') + '"', function () { |
| 40 | + assert.equal(expected, weekdayRange(test[0], test[1], test[2])); |
| 41 | + }); |
| 42 | + }); |
| 43 | + |
| 44 | + }); |
21 | 45 | });
|
0 commit comments