Browse Source

REFS DEVOPS-273 Added v2.5 compatibility

David Aebersold 11 years ago
parent
commit
6aa631230a

+ 10 - 10
lib/pipeline/expressions/YearExpression.js

@@ -2,7 +2,7 @@
 
 
 /** 
 /** 
  * A $year pipeline expression.
  * A $year pipeline expression.
- * @see evaluate 
+ * @see evaluateInternal 
  * @class YearExpression
  * @class YearExpression
  * @namespace mungedb-aggregate.pipeline.expressions
  * @namespace mungedb-aggregate.pipeline.expressions
  * @module mungedb-aggregate
  * @module mungedb-aggregate
@@ -15,24 +15,24 @@ var YearExpression = module.exports = function YearExpression(){
 
 
 // DEPENDENCIES
 // DEPENDENCIES
 var Value = require("../Value"),
 var Value = require("../Value"),
-	DayOfYearExpression = require("./DayOfYearExpression");
+	DayOfYearExpression = require("./DayOfYearExpression"),
+	Expression = require("./Expression");
+
 
 
 // PROTOTYPE MEMBERS
 // PROTOTYPE MEMBERS
 proto.getOpName = function getOpName(){
 proto.getOpName = function getOpName(){
 	return "$year";
 	return "$year";
 };
 };
 
 
-proto.addOperand = function addOperand(expr) {
-	this.checkArgLimit(1);
-	base.prototype.addOperand.call(this, expr);
-};
-
 /**
 /**
  * Takes a date and returns the full year.
  * Takes a date and returns the full year.
- * @method evaluate
+ * @method evaluateInternal
  **/
  **/
-proto.evaluate = function evaluate(doc) {
+proto.evaluateInternal = function evaluateInternal(doc) {
 	this.checkArgCount(1);
 	this.checkArgCount(1);
-	var date = this.operands[0].evaluate(doc);
+	var date = this.operands[0].evaluateInternal(doc);
 	return date.getUTCFullYear();
 	return date.getUTCFullYear();
 };
 };
+
+/** Register Expression */
+Expression.registerExpression("$year",YearExpression.parse);

+ 1 - 9
test/lib/pipeline/expressions/YearExpression.js

@@ -26,15 +26,7 @@ module.exports = {
 
 
 		},
 		},
 
 
-		"#getFactory()": {
-
-			"should return the constructor for this class": function factoryIsConstructor(){
-				assert.strictEqual(new YearExpression().getFactory(), undefined);
-			}
-
-		},
-
-		"#evaluate()": {
+		"#evaluateInternal()": {
 
 
 			"should return year; 2013 for 2013-02-18": function testStuff(){
 			"should return year; 2013 for 2013-02-18": function testStuff(){
 				assert.strictEqual(Expression.parseOperand({$year:"$someDate"}).evaluate({someDate:new Date("Mon Feb 18 2013 00:00:00 GMT-0500 (EST)")}), 2013);
 				assert.strictEqual(Expression.parseOperand({$year:"$someDate"}).evaluate({someDate:new Date("Mon Feb 18 2013 00:00:00 GMT-0500 (EST)")}), 2013);