summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/expression_or_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/pipeline/expression_or_test.cpp')
-rw-r--r--src/mongo/db/pipeline/expression_or_test.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/mongo/db/pipeline/expression_or_test.cpp b/src/mongo/db/pipeline/expression_or_test.cpp
index 20b0829c004..ca4f5fdf843 100644
--- a/src/mongo/db/pipeline/expression_or_test.cpp
+++ b/src/mongo/db/pipeline/expression_or_test.cpp
@@ -96,19 +96,18 @@ class ExpectedResultBase {
public:
virtual ~ExpectedResultBase() {}
void run() {
- intrusive_ptr<ExpressionContextForTest> expCtx(new ExpressionContextForTest());
+ auto expCtx = ExpressionContextForTest{};
BSONObj specObject = BSON("" << spec());
BSONElement specElement = specObject.firstElement();
- VariablesParseState vps = expCtx->variablesParseState;
- intrusive_ptr<Expression> expression = Expression::parseOperand(expCtx, specElement, vps);
+ VariablesParseState vps = expCtx.variablesParseState;
+ intrusive_ptr<Expression> expression = Expression::parseOperand(&expCtx, specElement, vps);
ASSERT_BSONOBJ_EQ(constify(spec()), expressionToBson(expression));
ASSERT_BSONOBJ_EQ(
BSON("" << expectedResult()),
- toBson(expression->evaluate(fromBson(BSON("a" << 1)), &expCtx->variables)));
+ toBson(expression->evaluate(fromBson(BSON("a" << 1)), &expCtx.variables)));
intrusive_ptr<Expression> optimized = expression->optimize();
- ASSERT_BSONOBJ_EQ(
- BSON("" << expectedResult()),
- toBson(optimized->evaluate(fromBson(BSON("a" << 1)), &expCtx->variables)));
+ ASSERT_BSONOBJ_EQ(BSON("" << expectedResult()),
+ toBson(optimized->evaluate(fromBson(BSON("a" << 1)), &expCtx.variables)));
}
protected:
@@ -120,11 +119,11 @@ class OptimizeBase {
public:
virtual ~OptimizeBase() {}
void run() {
- intrusive_ptr<ExpressionContextForTest> expCtx(new ExpressionContextForTest());
+ auto expCtx = ExpressionContextForTest{};
BSONObj specObject = BSON("" << spec());
BSONElement specElement = specObject.firstElement();
- VariablesParseState vps = expCtx->variablesParseState;
- intrusive_ptr<Expression> expression = Expression::parseOperand(expCtx, specElement, vps);
+ VariablesParseState vps = expCtx.variablesParseState;
+ intrusive_ptr<Expression> expression = Expression::parseOperand(&expCtx, specElement, vps);
ASSERT_BSONOBJ_EQ(constify(spec()), expressionToBson(expression));
intrusive_ptr<Expression> optimized = expression->optimize();
ASSERT_BSONOBJ_EQ(expectedOptimized(), expressionToBson(optimized));