datetimejs
Advanced tools
Comparing version 0.1.0 to 0.2.0
@@ -365,4 +365,7 @@ // Generated by CoffeeScript 1.6.3 | ||
dt.ISO_FORMAT = '%Y-%m-%dT%H:%M:%f'; | ||
dt.datetime.clone = function(d) { | ||
return new Date(d.getTime()); | ||
}; | ||
dt.datetime.addDays = function(d, v) { | ||
d = new Date(d); | ||
d = this.clone(d); | ||
d.setDate(d.getDate() + v); | ||
@@ -372,3 +375,3 @@ return d; | ||
dt.datetime.addMonths = function(d, v) { | ||
d = new Date(d); | ||
d = this.clone(d); | ||
d.setMonth(d.getMonth() + v); | ||
@@ -378,3 +381,3 @@ return d; | ||
dt.datetime.addYears = function(d, v) { | ||
d = new Date(d); | ||
d = this.clone(d); | ||
d.setFullYear(d.getFullYear() + v); | ||
@@ -384,3 +387,3 @@ return d; | ||
dt.datetime.resetTime = function(d) { | ||
d = new Date(d); | ||
d = this.clone(d); | ||
d.setHours(0, 0, 0, 0); | ||
@@ -412,4 +415,4 @@ return d; | ||
var absD, days, delta, hrs, mins, msecs, secs; | ||
d1 = new Date(d1); | ||
d2 = new Date(d2); | ||
d1 = this.clone(d1); | ||
d2 = this.clone(d2); | ||
delta = d2 - d1; | ||
@@ -432,16 +435,17 @@ absD = Math.abs(delta); | ||
}; | ||
dt.datetime.isBefore = function(d, d1) { | ||
return this.delta(d, d1).delta < 0; | ||
}; | ||
dt.datetime.isAfter = function(d, d1) { | ||
return this.delta(d, d1).delta > 0; | ||
}; | ||
dt.datetime.reorder = function() { | ||
var d; | ||
var d, | ||
_this = this; | ||
d = 1 <= arguments.length ? __slice.call(arguments, 0) : []; | ||
d.sort(function(d1, d2) { | ||
return this.delta(d1, d2).delta; | ||
return -_this.delta(d1, d2).delta; | ||
}); | ||
return d; | ||
}; | ||
dt.datetime.isBefore = function(d, d1) { | ||
return this.delta(d, d1).delta > 0; | ||
}; | ||
dt.datetime.isAfter = function(d, d1) { | ||
return this.delta(d, d1).delta < 0; | ||
}; | ||
dt.datetime.isBetween = function(d, d1, d2) { | ||
@@ -471,3 +475,3 @@ var _ref; | ||
dt.datetime.isLeapYear = function(d) { | ||
d = new Date(d); | ||
d = this.clone(d); | ||
d.setMonth(1); | ||
@@ -474,0 +478,0 @@ d.setDate(29); |
@@ -18,3 +18,4 @@ { | ||
"coffee-script": "1.6.3", | ||
"mocha": "*" | ||
"mocha": "*", | ||
"chai": "*" | ||
}, | ||
@@ -40,3 +41,3 @@ "repository": { | ||
}, | ||
"version" : "0.1.0" | ||
"version" : "0.2.0" | ||
} |
// Generated by CoffeeScript 1.6.3 | ||
var assert, d, d1, datetime, eq, sft; | ||
var assert, chai, d, d1, datetime; | ||
assert = require('assert'); | ||
if (typeof require !== "undefined" && require !== null) { | ||
chai = require('chai'); | ||
datetime = require('../datetime'); | ||
} | ||
datetime = require('../datetime'); | ||
assert = chai.assert; | ||
eq = assert.equal; | ||
sft = datetime.strftime; | ||
d = new Date(2013, 8, 1, 18, 7, 8, 200); | ||
@@ -18,71 +17,71 @@ | ||
it('should return the short week day name', function() { | ||
return eq(sft(d, '%a'), 'Sun'); | ||
return assert.equal(datetime.strftime(d, '%a'), 'Sun'); | ||
}); | ||
it('should return the long week day name', function() { | ||
return eq(sft(d, '%A'), 'Sunday'); | ||
return assert.equal(datetime.strftime(d, '%A'), 'Sunday'); | ||
}); | ||
it('should return the short month name', function() { | ||
return eq(sft(d, '%b'), 'Sep'); | ||
return assert.equal(datetime.strftime(d, '%b'), 'Sep'); | ||
}); | ||
it('should return the long month name', function() { | ||
return eq(sft(d, '%B'), 'September'); | ||
return assert.equal(datetime.strftime(d, '%B'), 'September'); | ||
}); | ||
it('should return the zero-padded date', function() { | ||
return eq(sft(d, '%d'), '01'); | ||
return assert.equal(datetime.strftime(d, '%d'), '01'); | ||
}); | ||
it('should return the non-padded date', function() { | ||
return eq(sft(d, '%D'), '1'); | ||
return assert.equal(datetime.strftime(d, '%D'), '1'); | ||
}); | ||
it('should return zero-padded seconds with fraction', function() { | ||
return eq(sft(d, '%f'), '08.20'); | ||
return assert.equal(datetime.strftime(d, '%f'), '08.20'); | ||
}); | ||
it('should return zero-padded hours in 24-hour format', function() { | ||
return eq(sft(d, '%H'), '18'); | ||
return assert.equal(datetime.strftime(d, '%H'), '18'); | ||
}); | ||
it('should return non-padded hours in 12-hour format', function() { | ||
return eq(sft(d, '%i'), '6'); | ||
return assert.equal(datetime.strftime(d, '%i'), '6'); | ||
}); | ||
it('should return zero-padded hours in 12-hour format', function() { | ||
return eq(sft(d, '%I'), '06'); | ||
return assert.equal(datetime.strftime(d, '%I'), '06'); | ||
}); | ||
it('should return zer-padded day of year', function() { | ||
return eq(sft(d, '%j'), '244'); | ||
return assert.equal(datetime.strftime(d, '%j'), '244'); | ||
}); | ||
it('should return zero-padded numeric month', function() { | ||
return eq(sft(d, '%m'), '09'); | ||
return assert.equal(datetime.strftime(d, '%m'), '09'); | ||
}); | ||
it('should return zero-padded minutes', function() { | ||
return eq(sft(d, '%M'), '07'); | ||
return assert.equal(datetime.strftime(d, '%M'), '07'); | ||
}); | ||
it('should return non-padded month', function() { | ||
return eq(sft(d, '%n'), '9'); | ||
return assert.equal(datetime.strftime(d, '%n'), '9'); | ||
}); | ||
it('should return non-padded minutes', function() { | ||
return eq(sft(d, '%N'), '7'); | ||
return assert.equal(datetime.strftime(d, '%N'), '7'); | ||
}); | ||
it('should return PM', function() { | ||
return eq(sft(d, '%p'), 'p.m.'); | ||
return assert.equal(datetime.strftime(d, '%p'), 'p.m.'); | ||
}); | ||
it('should return AM', function() { | ||
d.setHours(9); | ||
eq(sft(d, '%p'), 'a.m.'); | ||
assert.equal(datetime.strftime(d, '%p'), 'a.m.'); | ||
return d.setHours(18); | ||
}); | ||
it('should return non-padded seconds', function() { | ||
return eq(sft(d, '%s'), '8'); | ||
return assert.equal(datetime.strftime(d, '%s'), '8'); | ||
}); | ||
it('should return padded seconds', function() { | ||
return eq(sft(d, '%S'), '08'); | ||
return assert.equal(datetime.strftime(d, '%S'), '08'); | ||
}); | ||
it('should return miliseconds', function() { | ||
return eq(sft(d, '%r'), '200'); | ||
return assert.equal(datetime.strftime(d, '%r'), '200'); | ||
}); | ||
it('should return numeric weed day', function() { | ||
return eq(sft(d, '%w'), '0'); | ||
return assert.equal(datetime.strftime(d, '%w'), '0'); | ||
}); | ||
it('should return year without century', function() { | ||
return eq(sft(d, '%y'), '13'); | ||
return assert.equal(datetime.strftime(d, '%y'), '13'); | ||
}); | ||
it('should return full year', function() { | ||
return eq(sft(d, '%Y'), '2013'); | ||
return assert.equal(datetime.strftime(d, '%Y'), '2013'); | ||
}); | ||
@@ -95,17 +94,17 @@ it('should return timezone', function() { | ||
}; | ||
eq(sft(d, '%z'), '+0200'); | ||
assert.equal(datetime.strftime(d, '%z'), '+0200'); | ||
d.getTimezoneOffset = function() { | ||
return 360; | ||
}; | ||
eq(sft(d, '%z'), '-0600'); | ||
assert.equal(datetime.strftime(d, '%z'), '-0600'); | ||
return d.getTimezoneOffset = original; | ||
}); | ||
it('should return literal percent', function() { | ||
return eq(sft(d, '%%'), '%'); | ||
return assert.equal(datetime.strftime(d, '%%'), '%'); | ||
}); | ||
return it('should retain non-formatting character', function() { | ||
var f; | ||
f = sft(d, 'The year is %Y, around %i %p on %B %D'); | ||
return eq(f, "The year is 2013, around 6 p.m. on September 1"); | ||
f = datetime.strftime(d, 'The year is %Y, around %i %p on %B %D'); | ||
return assert.equal(f, "The year is 2013, around 6 p.m. on September 1"); | ||
}); | ||
}); |
// Generated by CoffeeScript 1.6.3 | ||
var assert, datetime, isoformat, isoparse; | ||
var assert, chai, datetime; | ||
assert = require('assert'); | ||
if (typeof require !== "undefined" && require !== null) { | ||
chai = require('chai'); | ||
datetime = require('../datetime'); | ||
} | ||
datetime = require('../datetime'); | ||
assert = chai.assert; | ||
isoformat = datetime.isoformat; | ||
isoparse = datetime.isoparse; | ||
describe('datetime', function() { | ||
@@ -18,3 +17,3 @@ describe('#isoformat()', function() { | ||
d.setMinutes(d.getMinutes() - d.getTimezoneOffset()); | ||
return assert.equal(isoformat(d), '2013-09-01T16:00:00.00'); | ||
return assert.equal(datetime.isoformat(d), '2013-09-01T16:00:00.00'); | ||
}); | ||
@@ -21,0 +20,0 @@ }); |
// Generated by CoffeeScript 1.6.3 | ||
var assert, datetime; | ||
var assert, chai, datetime, root; | ||
assert = require('assert'); | ||
if (typeof require !== "undefined" && require !== null) { | ||
chai = require('chai'); | ||
datetime = require('../datetime'); | ||
} | ||
datetime = require('../datetime'); | ||
if (typeof GLOBAL === "undefined" || GLOBAL === null) { | ||
root = this; | ||
} else { | ||
root = GLOBAL; | ||
} | ||
datetime = datetime.datetime; | ||
assert = chai.assert; | ||
describe('datetime.datetime', function() { | ||
describe('#addDays()', function() { | ||
describe('#clone', function() { | ||
it('should create identical version of date object', function() { | ||
var d, d1; | ||
d = new Date(2013, 8, 1); | ||
d1 = datetime.datetime.clone(d); | ||
return assert.equal(d1 - d, 0); | ||
}); | ||
return it('should create distinct instances', function() { | ||
var d, d1; | ||
d = new Date(2013, 8, 1); | ||
d1 = datetime.datetime.clone(d); | ||
return assert.notEqual(d1, d); | ||
}); | ||
}); | ||
describe('#addDays', function() { | ||
it('should add one day to date if passed date and 1', function() { | ||
var d; | ||
d = new Date(2013, 8, 1); | ||
d = datetime.addDays(d, 1); | ||
d = datetime.datetime.addDays(d, 1); | ||
return assert.equal(d.getDate(), 2); | ||
@@ -21,3 +42,3 @@ }); | ||
d = new Date(2013, 8, 1); | ||
d = datetime.addDays(d, -1); | ||
d = datetime.datetime.addDays(d, -1); | ||
assert.equal(d.getDate(), 31); | ||
@@ -29,3 +50,3 @@ return assert.equal(d.getMonth(), 7); | ||
d = new Date(2013, 11, 31); | ||
d = datetime.addDays(d, 1); | ||
d = datetime.datetime.addDays(d, 1); | ||
assert.equal(d.getDate(), 1); | ||
@@ -36,7 +57,7 @@ assert.equal(d.getMonth(), 0); | ||
}); | ||
describe('#addMonths()', function() { | ||
describe('#addMonths', function() { | ||
it('should add one month if passed a date and 1', function() { | ||
var d; | ||
d = new Date(2013, 8, 1); | ||
d = datetime.addMonths(d, 1); | ||
d = datetime.datetime.addMonths(d, 1); | ||
return assert.equal(d.getMonth(), 9); | ||
@@ -47,3 +68,3 @@ }); | ||
d = new Date(2013, 8, 1); | ||
d = datetime.addMonths(d, -1); | ||
d = datetime.datetime.addMonths(d, -1); | ||
return assert.equal(d.getMonth(), 7); | ||
@@ -54,3 +75,3 @@ }); | ||
d = new Date(2013, 8, 1); | ||
d = datetime.addMonths(d, 4); | ||
d = datetime.datetime.addMonths(d, 4); | ||
assert.equal(d.getMonth(), 0); | ||
@@ -60,7 +81,7 @@ return assert.equal(d.getFullYear(), 2014); | ||
}); | ||
describe('#addYears()', function() { | ||
describe('#addYears', function() { | ||
it('should add a year if passed 1', function() { | ||
var d; | ||
d = new Date(2013, 0, 1); | ||
d = datetime.addYears(d, 1); | ||
d = datetime.datetime.addYears(d, 1); | ||
return assert.equal(d.getFullYear(), 2014); | ||
@@ -71,3 +92,3 @@ }); | ||
d = new Date(2013, 0, 1); | ||
d = datetime.addYears(d, -1); | ||
d = datetime.datetime.addYears(d, -1); | ||
return assert.equal(d.getFullYear(), 2012); | ||
@@ -78,3 +99,3 @@ }); | ||
d = new Date(2012, 1, 29); | ||
d = datetime.addYears(d, 1); | ||
d = datetime.datetime.addYears(d, 1); | ||
assert.equal(d.getDate(), 1); | ||
@@ -85,7 +106,7 @@ assert.equal(d.getMonth(), 2); | ||
}); | ||
describe('#resetTime()', function() { | ||
describe('#resetTime', function() { | ||
return it('should reset the time to 0', function() { | ||
var d; | ||
d = new Date(2013, 8, 1, 15, 22, 59, 333); | ||
d = datetime.resetTime(d); | ||
d = datetime.datetime.resetTime(d); | ||
assert.equal(d.getHours(), 0); | ||
@@ -97,7 +118,7 @@ assert.equal(d.getMinutes(), 0); | ||
}); | ||
describe('#today()', function() { | ||
describe('#today', function() { | ||
it('should be today', function() { | ||
var d1, d2; | ||
d1 = new Date(); | ||
d2 = datetime.today(); | ||
d2 = datetime.datetime.today(); | ||
assert.equal(d1.getFullYear(), d2.getFullYear()); | ||
@@ -109,3 +130,3 @@ assert.equal(d1.getMonth(), d2.getMonth()); | ||
var d; | ||
d = datetime.today(); | ||
d = datetime.datetime.today(); | ||
assert.equal(d.getHours(), 0); | ||
@@ -117,7 +138,7 @@ assert.equal(d.getMinutes(), 0); | ||
}); | ||
describe('#thisMonth()', function() { | ||
describe('#thisMonth', function() { | ||
it("should be this month's 1st", function() { | ||
var d1, d2; | ||
d1 = new Date(); | ||
d2 = datetime.thisMonth(); | ||
d2 = datetime.datetime.thisMonth(); | ||
assert.equal(d1.getFullYear(), d2.getFullYear()); | ||
@@ -129,3 +150,3 @@ assert.equal(d1.getMonth(), d2.getMonth()); | ||
var d; | ||
d = datetime.thisMonth(); | ||
d = datetime.datetime.thisMonth(); | ||
assert.equal(d.getHours(), 0); | ||
@@ -137,3 +158,3 @@ assert.equal(d.getMinutes(), 0); | ||
}); | ||
describe('#thisWeek()', function() { | ||
describe('#thisWeek', function() { | ||
it('should be this Sunday', function() { | ||
@@ -143,3 +164,3 @@ var date, nativeDate; | ||
date = null; | ||
GLOBAL.Date = function() { | ||
root.Date = function() { | ||
return { | ||
@@ -155,12 +176,13 @@ getDay: function() { | ||
}, | ||
setHours: function() {} | ||
setHours: function() {}, | ||
getTime: function() {} | ||
}; | ||
}; | ||
datetime.thisWeek(); | ||
datetime.datetime.thisWeek(); | ||
assert.equal(date, 6); | ||
return GLOBAL.Date = nativeDate; | ||
return root.Date = nativeDate; | ||
}); | ||
return it('should have reset time', function() { | ||
var d; | ||
d = datetime.thisWeek(); | ||
d = datetime.datetime.thisWeek(); | ||
assert.equal(d.getHours(), 0); | ||
@@ -172,7 +194,7 @@ assert.equal(d.getMinutes(), 0); | ||
}); | ||
return describe('#delta()', function() { | ||
describe('#delta', function() { | ||
it('should return an object with required properties', function() { | ||
var d1, d2, delta; | ||
d1 = d2 = new Date(); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
assert.ok(delta.hasOwnProperty('delta'), 'missing `delta`'); | ||
@@ -188,3 +210,3 @@ assert.ok(delta.hasOwnProperty('milliseconds'), 'missing `milliseconds`'); | ||
d1 = d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.delta, 0); | ||
@@ -196,3 +218,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 10); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.delta, 10); | ||
@@ -204,3 +226,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.delta, -10); | ||
@@ -212,3 +234,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.milliseconds, 10); | ||
@@ -220,3 +242,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.seconds, 2); | ||
@@ -228,3 +250,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.seconds, 3); | ||
@@ -236,3 +258,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.milliseconds, 2 * 1000); | ||
@@ -244,3 +266,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.minutes, 2); | ||
@@ -252,3 +274,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.minutes, 3); | ||
@@ -260,3 +282,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.seconds, 2 * 60); | ||
@@ -268,3 +290,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.milliseconds, 2 * 60 * 1000); | ||
@@ -276,3 +298,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.hours, 1); | ||
@@ -284,3 +306,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.hours, 2); | ||
@@ -292,3 +314,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.minutes, 60); | ||
@@ -300,3 +322,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.seconds, 60 * 60); | ||
@@ -308,3 +330,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.milliseconds, 60 * 60 * 1000); | ||
@@ -316,3 +338,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.days, 2); | ||
@@ -324,3 +346,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.days, 3); | ||
@@ -332,3 +354,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.hours, 2 * 24); | ||
@@ -340,3 +362,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.minutes, 2 * 24 * 60); | ||
@@ -348,3 +370,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.seconds, 2 * 24 * 60 * 60); | ||
@@ -356,3 +378,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
return assert.equal(delta.milliseconds, 2 * 24 * 60 * 60 * 1000); | ||
@@ -364,3 +386,3 @@ }); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
assert.equal(delta.composite[0], 2); | ||
@@ -376,3 +398,3 @@ assert.equal(delta.composite[1], 0); | ||
d2 = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
delta = datetime.delta(d1, d2); | ||
delta = datetime.datetime.delta(d1, d2); | ||
assert.equal(delta.composite[0], 2, 'days'); | ||
@@ -384,2 +406,115 @@ assert.equal(delta.composite[1], 1, 'hours'); | ||
}); | ||
describe('#reorder', function() { | ||
return it('should return ordered dates', function() { | ||
var d1, d2, d3, sorted; | ||
d1 = new Date(2013, 8, 1); | ||
d2 = new Date(2013, 8, 2); | ||
d3 = new Date(2013, 8, 3); | ||
sorted = datetime.datetime.reorder(d3, d1, d2); | ||
assert.equal(d1, sorted[0]); | ||
assert.equal(d2, sorted[1]); | ||
return assert.equal(d3, sorted[2]); | ||
}); | ||
}); | ||
describe('#isBefore', function() { | ||
it('should basically work :)', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
neu = new Date(2013, 8, 1, 12, 1, 0, 0); | ||
assert.ok(datetime.datetime.isBefore(old, neu)); | ||
return assert.notOk(datetime.datetime.isBefore(neu, old)); | ||
}); | ||
return it('should return false when dates are equal', function() { | ||
var neu, old; | ||
old = neu = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
assert.notOk(datetime.datetime.isBefore(old, neu)); | ||
return assert.notOk(datetime.datetime.isBefore(neu, old)); | ||
}); | ||
}); | ||
describe('#isAfter', function() { | ||
it('should basically work... again', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
neu = new Date(2013, 8, 1, 12, 1, 0, 0); | ||
assert.notOk(datetime.datetime.isAfter(old, neu)); | ||
return assert.ok(datetime.datetime.isAfter(neu, old)); | ||
}); | ||
return it('should return false if dates are equal', function() { | ||
var neu, old; | ||
old = neu = new Date(2013, 8, 1, 12, 0, 0, 0); | ||
assert.notOk(datetime.datetime.isAfter(old, neu)); | ||
return assert.notOk(datetime.datetime.isAfter(neu, old)); | ||
}); | ||
}); | ||
describe('#isBetwen', function() { | ||
it('should return true when date is between two dates', function() { | ||
var d1, d2, d3; | ||
d1 = new Date(2013, 8, 1); | ||
d2 = new Date(2013, 8, 2); | ||
d3 = new Date(2013, 8, 3); | ||
return assert.ok(datetime.datetime.isBetween(d2, d1, d3)); | ||
}); | ||
it("should't care about order of the two extremes", function() { | ||
var d1, d2, d3; | ||
d1 = new Date(2013, 8, 1); | ||
d2 = new Date(2013, 8, 2); | ||
d3 = new Date(2013, 8, 3); | ||
return assert.ok(datetime.datetime.isBetween(d2, d3, d1)); | ||
}); | ||
it("should return false if middle date matches an extereme", function() { | ||
var d1, d2, d3; | ||
d1 = new Date(2013, 8, 1); | ||
d2 = d3 = new Date(2013, 8, 2); | ||
return assert.notOk(datetime.datetime.isBetween(d2, d1, d3)); | ||
}); | ||
return it("should return false if date is outside extremes", function() { | ||
var d1, d2, d3; | ||
d1 = new Date(2013, 8, 1); | ||
d2 = new Date(2013, 8, 2); | ||
d3 = new Date(2013, 8, 3); | ||
return assert.notOk(datetime.datetime.isBetween(d1, d2, d3)); | ||
}); | ||
}); | ||
describe('#isDateBefore', function() { | ||
it('should return false if only times differ', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1, 5); | ||
neu = new Date(2013, 8, 1, 12); | ||
assert.notOk(datetime.datetime.isDateBefore(old, neu)); | ||
return assert.notOk(datetime.datetime.isDateBefore(neu, old)); | ||
}); | ||
it('should return false if if date is after', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1); | ||
neu = new Date(2013, 8, 2); | ||
return assert.notOk(datetime.datetime.isDateBefore(neu, old)); | ||
}); | ||
return it('should return true if date is before', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1); | ||
neu = new Date(2013, 8, 2); | ||
return assert.ok(datetime.datetime.isDateBefore(old, neu)); | ||
}); | ||
}); | ||
return describe('#isDateAfter', function() { | ||
it('should return false if only times differ', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1, 5); | ||
neu = new Date(2013, 8, 1, 12); | ||
assert.notOk(datetime.datetime.isDateAfter(neu, old)); | ||
return assert.notOk(datetime.datetime.isDateAfter(old, neu)); | ||
}); | ||
it('should return false if date is before', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1); | ||
neu = new Date(2013, 8, 2); | ||
return assert.notOk(datetime.datetime.isDateAfter(old, neu)); | ||
}); | ||
return it('should return true if date is after', function() { | ||
var neu, old; | ||
old = new Date(2013, 8, 1); | ||
neu = new Date(2013, 8, 2); | ||
return assert.ok(datetime.datetime.isDateAfter(neu, old)); | ||
}); | ||
}); | ||
}); |
// Generated by CoffeeScript 1.6.3 | ||
var assert, datetime, utils; | ||
var assert, chai, datetime; | ||
assert = require('assert'); | ||
if (typeof require !== "undefined" && require !== null) { | ||
chai = require('chai'); | ||
datetime = require('../datetime'); | ||
} | ||
datetime = require('../datetime'); | ||
assert = chai.assert; | ||
utils = datetime.utils; | ||
describe('datetime.utils', function() { | ||
@@ -15,3 +16,3 @@ return describe('#zeroPad()', function() { | ||
i = 10; | ||
s = utils.zeroPad(i, 4); | ||
s = datetime.utils.zeroPad(i, 4); | ||
return assert.equal(s.length, 4); | ||
@@ -22,3 +23,3 @@ }); | ||
i = 10; | ||
s = utils.zeroPad(i, 1); | ||
s = datetime.utils.zeroPad(i, 1); | ||
assert.equal(s.length, 1); | ||
@@ -30,3 +31,3 @@ return assert.equal(s, '0'); | ||
f = 2.5; | ||
s = utils.zeroPad(f, 5); | ||
s = datetime.utils.zeroPad(f, 5); | ||
return assert.equal(s, '002.5'); | ||
@@ -37,3 +38,3 @@ }); | ||
f = 2.5; | ||
s = utils.zeroPad(f, 5, 0); | ||
s = datetime.utils.zeroPad(f, 5, 0); | ||
return assert.equal(s, '00002'); | ||
@@ -44,9 +45,9 @@ }); | ||
f = 2.5; | ||
s = utils.zeroPad(f, 5, 2); | ||
s = datetime.utils.zeroPad(f, 5, 2); | ||
return assert.equal(s, '02.50'); | ||
}); | ||
return it('should handle a 0 normally', function() { | ||
return assert.equal(utils.zeroPad(0, 5, 2), '00.00'); | ||
return assert.equal(datetime.utils.zeroPad(0, 5, 2), '00.00'); | ||
}); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Uses eval
Supply chain riskPackage uses dynamic code execution (e.g., eval()), which is a dangerous practice. This can prevent the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
315855
20
9649
4
16
2