summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/document_source_merge_test.cpp
diff options
context:
space:
mode:
authorAnton Korshunov <anton.korshunov@mongodb.com>2019-05-02 23:04:10 +0100
committerAnton Korshunov <anton.korshunov@mongodb.com>2019-05-03 08:51:37 +0100
commit634bf7b2e754914d4bdd09efe498251e8d7ad71b (patch)
tree3fdf4e4bbc73027e730a947dc1902c1169be9d48 /src/mongo/db/pipeline/document_source_merge_test.cpp
parentd4281131901438a3ca32ad854685a92cab5473dd (diff)
downloadmongo-634bf7b2e754914d4bdd09efe498251e8d7ad71b.tar.gz
SERVER-40430 Add merge support for whenMatched: merge
Diffstat (limited to 'src/mongo/db/pipeline/document_source_merge_test.cpp')
-rw-r--r--src/mongo/db/pipeline/document_source_merge_test.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/mongo/db/pipeline/document_source_merge_test.cpp b/src/mongo/db/pipeline/document_source_merge_test.cpp
index bb819de73cb..8970cc33a5b 100644
--- a/src/mongo/db/pipeline/document_source_merge_test.cpp
+++ b/src/mongo/db/pipeline/document_source_merge_test.cpp
@@ -47,7 +47,7 @@ constexpr StringData kWhenNotMatchedModeFieldName =
constexpr StringData kIntoFieldName = DocumentSourceMergeSpec::kTargetNssFieldName;
constexpr StringData kOnFieldName = DocumentSourceMergeSpec::kOnFieldName;
const StringData kDefaultWhenMatchedMode =
- MergeWhenMatchedMode_serializer(MergeWhenMatchedModeEnum::kReplaceWithNew);
+ MergeWhenMatchedMode_serializer(MergeWhenMatchedModeEnum::kMerge);
const StringData kDefaultWhenNotMatchedMode =
MergeWhenNotMatchedMode_serializer(MergeWhenNotMatchedModeEnum::kInsert);
@@ -602,6 +602,14 @@ TEST_F(DocumentSourceMergeTest, CorrectlyHandlesWhenMatchedAndWhenNotMatchedMode
<< "merge"
<< "whenNotMatched"
<< "insert"));
+ ASSERT(createMergeStage(spec));
+
+ spec = BSON("$merge" << BSON("into"
+ << "target_collection"
+ << "whenMatched"
+ << "keepExisting"
+ << "whenNotMatched"
+ << "insert"));
ASSERT_THROWS_CODE(createMergeStage(spec), DBException, ErrorCodes::BadValue);
spec = BSON("$merge" << BSON("into"