| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- /**
- * Module dependencies.
- */
- var assert = require('assert');
- var timeRange = require('../timeRange');
- var vanillaGetHours = Date.prototype.getHours;
- var vanillaGetMinutes = Date.prototype.getMinutes;
- var vanillaGetSeconds = Date.prototype.getSeconds;
- var vanillaGetUTCHours = Date.prototype.getUTCHours;
- var vanillaGetUTCMinutes = Date.prototype.getUTCMinutes;
- var vanillaGetUTCSeconds = Date.prototype.getUTCSeconds;
- describe('hooks', function() {
- before(function() {
- // Setting local time as 01:24:30
- Date.prototype.getHours = function() { return 1; }
- Date.prototype.getMinutes = function() { return 24; }
- Date.prototype.getSeconds = function() { return 30; }
- // Setting UTC time as 19:54:30
- Date.prototype.getUTCHours = function() { return 19; }
- Date.prototype.getUTCMinutes = function() { return 54; }
- Date.prototype.getUTCSeconds = function() { return 30; }
- });
- after(function() {
- Date.prototype.getHours = vanillaGetHours;
- Date.prototype.getUTCHours = vanillaGetUTCHours;
- Date.prototype.getUTCMinutes = vanillaGetUTCMinutes;
- Date.prototype.getUTCSeconds = vanillaGetUTCSeconds;
- });
- describe('timeRange()', function () {
- var tests = [
- [1, true],
- [1, 2, true],
- [0, 0, 0, 30, false],
- [0, 0, 0, 0, 30, 0, false],
- [0, 0, 0, 0, 30, 0, 'GMT', false],
- [0, 0, 0, 20, 0, 0, 'GMT', true],
- ];
- tests.forEach(function (test) {
- var expected = test.pop();
- it('should return `' + expected +'` for "' + test.join('", "') + '"', function () {
- assert.equal(expected, timeRange.apply(this, test));
- });
- });
- });
- });
|