| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 | 
							- "use strict";
 
- var assert = require("assert"),
 
- 		DayOfMonthExpression = require("../../../../lib/pipeline/expressions/DayOfMonthExpression"),
 
- 		Expression = require("../../../../lib/pipeline/expressions/Expression"),
 
- 		VariablesParseState = require("../../../../Lib/pipeline/expressions/VariablesParseState"),
 
- 		VariablesIdGenerator = require("../../../../Lib/pipeline/expressions/VariablesIdGenerator");
 
- module.exports = {
 
- 		"DayOfMonthExpression": {
 
- 				"constructor()": {
 
- 						"should throw Error when constructing without args": function testConstructor() {
 
- 								assert.throws(function() {
 
- 										new DayOfMonthExpression();
 
- 								});
 
- 						},
 
- 						"should not throw Error when constructing with an arg": function testConstructor() {
 
- 								assert.doesNotThrow(function() {
 
- 										new DayOfMonthExpression("1/1/2014");
 
- 								});
 
- 						}
 
- 				},
 
- 				"#getOpName()": {
 
- 						"should return the correct op name; $dayOfMonth": function testOpName() {
 
- 								assert.equal(new DayOfMonthExpression("1/1/2014").getOpName(), "$dayOfMonth");
 
- 						}
 
- 				},
 
- 				"#evaulateInternal1()": {
 
- 						"should return day of month; 10 for 2013-03-10": function testOpName() {
 
- 								assert.equal(new DayOfMonthExpression("2013-03-10T00:00:00.000Z").evaluateInternal(), "10");
 
- 						}
 
- 				},
 
- 				"#evaluateInternal2()": {
 
- 						"should return day of month; 18 for 2013-02-18": function testStuff() {
 
- 								var idGenerator = new VariablesIdGenerator();
 
- 								var vps = new VariablesParseState(idGenerator);
 
- 								var parseOp = Expression.parseOperand({
 
- 										$dayOfMonth: "$someDate"
 
- 								}, vps);
 
- 								var result = parseOp.evaluateInternal({
 
- 										$someDate: new Date("2013-02-18T00:00:00.000Z")
 
- 								});
 
- 								assert.strictEqual(result, "2");
 
- 										// assert.strictEqual(Expression.parseOperand({
 
- 										// $dayOfMonth: "$someDate"
 
- 										// }, vps).evaluate({
 
- 										// someDate: new Date("2013-02-18T00:00:00.000Z")
 
- 										// }), 18);
 
- 								}
 
- 						}
 
- 				}
 
- 		};
 
- 		if (!module.parent)(new(require("mocha"))()).ui("exports").reporter("spec").addFile(__filename).run(process.exit);
 
 
  |