diff options
author | Nicholas Zolnierz <nicholas.zolnierz@mongodb.com> | 2023-02-13 16:34:03 -0500 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2023-02-16 19:20:30 +0000 |
commit | f92c25b160937a960a4bedc066ebcfe20dd35d09 (patch) | |
tree | bcfc6a5dad17c21232f890f16f9ef99595c4bbed /src/mongo/db/matcher/expression_algo_test.cpp | |
parent | 5e4ec1d24431fcdd28b579a024c5c801b8cde4e2 (diff) | |
download | mongo-v4.2.tar.gz |
SERVER-68434 Fix plan cache key encoding to account for $or in partial index expressionv4.2
(cherry picked from commit f15f2bf8958557b4e8fccc6e8e1c7c8c5834d209)
(cherry picked from commit d19b8c60309c3a660a968ae8cf074aef92e1266d)
(cherry picked from commit 65dc21eabcdc2bbf952418b6d4988a199c980d43)
Diffstat (limited to 'src/mongo/db/matcher/expression_algo_test.cpp')
-rw-r--r-- | src/mongo/db/matcher/expression_algo_test.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mongo/db/matcher/expression_algo_test.cpp b/src/mongo/db/matcher/expression_algo_test.cpp index 68075fbb396..41bbb9b1799 100644 --- a/src/mongo/db/matcher/expression_algo_test.cpp +++ b/src/mongo/db/matcher/expression_algo_test.cpp @@ -177,6 +177,14 @@ TEST(ExpressionAlgoIsSubsetOf, CompareAnd_GT) { ASSERT_FALSE(expression::isSubsetOf(filter.get(), query.get())); } +TEST(ExpressionAlgoIsSubsetOf, CompareAnd_SingleField) { + ParsedMatchExpression filter("{a: {$gt: 5, $lt: 7}}"); + ParsedMatchExpression query("{a: {$gt: 5, $lt: 6}}"); + + ASSERT_TRUE(expression::isSubsetOf(query.get(), filter.get())); + ASSERT_FALSE(expression::isSubsetOf(filter.get(), query.get())); +} + TEST(ExpressionAlgoIsSubsetOf, CompareOr_LT) { ParsedMatchExpression lt5("{a: {$lt: 5}}"); ParsedMatchExpression eq2OrEq3("{$or: [{a: 2}, {a: 3}]}"); |