summaryrefslogtreecommitdiff
path: root/src/mongo/db/catalog/drop_database_test.cpp
diff options
context:
space:
mode:
authorMaria van Keulen <maria@mongodb.com>2018-01-10 17:25:17 -0500
committerMaria van Keulen <maria@mongodb.com>2018-02-09 16:06:18 -0500
commit72fc7cea722f952e3ad47c5470cb60ae2114097f (patch)
tree5515d82ed702e8153d61c32844f2a8fc977ca5ea /src/mongo/db/catalog/drop_database_test.cpp
parente28c2f4732e490ed8efa6148d20d889dfd603028 (diff)
downloadmongo-72fc7cea722f952e3ad47c5470cb60ae2114097f.tar.gz
SERVER-32205 Prohibit dropping the admin database at catalog level
Diffstat (limited to 'src/mongo/db/catalog/drop_database_test.cpp')
-rw-r--r--src/mongo/db/catalog/drop_database_test.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mongo/db/catalog/drop_database_test.cpp b/src/mongo/db/catalog/drop_database_test.cpp
index ee2a899c1eb..da6bb449432 100644
--- a/src/mongo/db/catalog/drop_database_test.cpp
+++ b/src/mongo/db/catalog/drop_database_test.cpp
@@ -458,4 +458,13 @@ TEST_F(DropDatabaseTest,
ASSERT_FALSE(db->isDropPending(_opCtx.get()));
}
+TEST_F(DropDatabaseTest, DropDatabaseFailsToDropAdmin) {
+ NamespaceString adminNSS(NamespaceString::kAdminDb, "foo");
+ _createCollection(_opCtx.get(), adminNSS);
+ ASSERT_THROWS_CODE_AND_WHAT(dropDatabase(_opCtx.get(), adminNSS.db().toString()).ignore(),
+ AssertionException,
+ ErrorCodes::IllegalOperation,
+ "Dropping the 'admin' database is prohibited.");
+}
+
} // namespace