Browse Source

Fixes #965. Finished test case and code for DayOfYearExpression.

http://source.rd.rcg.local/trac/eagle6/changeset/1273/Eagle6_SVN
Spencer Rathbun 12 năm trước cách đây
mục cha
commit
234941eb16

+ 3 - 3
lib/pipeline/expressions/DayOfYearExpression.js

@@ -25,9 +25,9 @@ var DayOfYearExpression = module.exports = (function(){
 
 	// STATIC METHODS
 	klass.getDateDayOfYear = function getDateDayOfYear(d){
-		var y11 = new Date(d.getFullYear(), 0, 0),	// same year, first month, first year; time omitted
-			ymd = new Date(d.getFullYear(), d.getMonth(), d.getDate());	// same y,m,d; time omitted
-		return Math.ceil((y11 - ymd) / 86400000);	//NOTE: 86400000 ms is 1 day
+		var y11 = new Date(d.getFullYear(), 0, 1),	// same year, first month, first day; time omitted
+			ymd = new Date(d.getFullYear(), d.getMonth(), d.getDate() + 1);	// same y,m,d; time omitted, add 1 because days start at 1
+		return Math.ceil((ymd - y11) / 86400000);	//NOTE: 86400000 ms is 1 day
 	};
 
 	return klass;

+ 1 - 1
test/lib/pipeline/expressions/DayOfYearExpression.js

@@ -35,7 +35,7 @@ module.exports = {
 		"#evaluate()": {
 
 			"should return day of year; 49 for 2013-02-18": function testStuff(){
-				assert.strictEqual(Expression.parseOperand({$dayOfMonth:"$someDate"}).evaluate({someDate:new Date("2013-02-18")}), 49);
+				assert.strictEqual(Expression.parseOperand({$dayOfYear:"$someDate"}).evaluate({someDate:new Date("2013-02-18 EST")}), 49);
 			}
 
 		}