summaryrefslogtreecommitdiff
path: root/src/mongo/db/catalog/index_spec_validate_test.cpp
diff options
context:
space:
mode:
authorJames Wahlin <james.wahlin@10gen.com>2016-09-23 11:28:21 -0400
committerJames Wahlin <james.wahlin@10gen.com>2016-09-23 17:21:37 -0400
commit5563428f99af20c29cb334f97e84f0dcc1cb102a (patch)
treeaad314cbc290ff98b2407c801c8a5a71234dda05 /src/mongo/db/catalog/index_spec_validate_test.cpp
parent2009fc942491098a4bd17001a2278af471e3cb08 (diff)
downloadmongo-5563428f99af20c29cb334f97e84f0dcc1cb102a.tar.gz
SERVER-769 Validate createIndexes field names
Diffstat (limited to 'src/mongo/db/catalog/index_spec_validate_test.cpp')
-rw-r--r--src/mongo/db/catalog/index_spec_validate_test.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mongo/db/catalog/index_spec_validate_test.cpp b/src/mongo/db/catalog/index_spec_validate_test.cpp
index c41bc920cad..c1731e08f10 100644
--- a/src/mongo/db/catalog/index_spec_validate_test.cpp
+++ b/src/mongo/db/catalog/index_spec_validate_test.cpp
@@ -370,5 +370,21 @@ TEST(IndexSpecValidateTest, AcceptsIndexSpecIfCollationIsPresentAndVersionIsEqua
sorted(result.getValue()));
}
+TEST(IndexSpecValidateTest, ReturnsAnErrorIfUnknownFieldIsPresentInSpecV2) {
+ auto result =
+ validateIndexSpec(BSON("key" << BSON("field" << 1) << "v" << 2 << "unknownField" << 1),
+ kTestNamespace,
+ ServerGlobalParams::FeatureCompatibility::Version::k34);
+ ASSERT_EQ(ErrorCodes::BadValue, result);
+}
+
+TEST(IndexSpecValidateTest, ReturnsAnErrorIfUnknownFieldIsPresentInSpecV1) {
+ auto result =
+ validateIndexSpec(BSON("key" << BSON("field" << 1) << "v" << 1 << "unknownField" << 1),
+ kTestNamespace,
+ ServerGlobalParams::FeatureCompatibility::Version::k34);
+ ASSERT_EQ(ErrorCodes::BadValue, result);
+}
+
} // namespace
} // namespace mongo