summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2022-04-05 15:48:48 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2022-04-14 19:26:03 +0000
commit1dfb79ae1f067837b6dbd858c88a986bc5dfec2b (patch)
tree97947b239081b45395d69c86b32f4189ea46c2e8
parent08576d121b6770d13a50580d574042baccbcce8c (diff)
downloadmongo-1dfb79ae1f067837b6dbd858c88a986bc5dfec2b.tar.gz
SERVER-65137 CollectionMock accepts UUID at construction
(cherry picked from commit 58dec1f1b5ae5f103b2adc343ef9231c44924102)
-rw-r--r--src/mongo/db/catalog/collection_catalog_test.cpp4
-rw-r--r--src/mongo/db/catalog/collection_mock.h10
2 files changed, 10 insertions, 4 deletions
diff --git a/src/mongo/db/catalog/collection_catalog_test.cpp b/src/mongo/db/catalog/collection_catalog_test.cpp
index 031421c990a..5e9d9512106 100644
--- a/src/mongo/db/catalog/collection_catalog_test.cpp
+++ b/src/mongo/db/catalog/collection_catalog_test.cpp
@@ -68,7 +68,7 @@ public:
ServiceContextMongoDTest::setUp();
opCtx = makeOperationContext();
- std::shared_ptr<Collection> collection = std::make_shared<CollectionMock>(nss);
+ std::shared_ptr<Collection> collection = std::make_shared<CollectionMock>(colUUID, nss);
col = CollectionPtr(collection.get(), CollectionPtr::NoYieldTag{});
// Register dummy collection in catalog.
catalog.registerCollection(opCtx.get(), colUUID, std::move(collection));
@@ -438,7 +438,7 @@ TEST_F(CollectionCatalogTest, OnDropCollection) {
TEST_F(CollectionCatalogTest, RenameCollection) {
auto uuid = CollectionUUID::gen();
NamespaceString oldNss(nss.db(), "oldcol");
- std::shared_ptr<Collection> collShared = std::make_shared<CollectionMock>(oldNss);
+ std::shared_ptr<Collection> collShared = std::make_shared<CollectionMock>(uuid, oldNss);
auto collection = collShared.get();
catalog.registerCollection(opCtx.get(), uuid, std::move(collShared));
ASSERT_EQUALS(catalog.lookupCollectionByUUID(opCtx.get(), uuid), collection);
diff --git a/src/mongo/db/catalog/collection_mock.h b/src/mongo/db/catalog/collection_mock.h
index 764776c6118..862d75012d5 100644
--- a/src/mongo/db/catalog/collection_mock.h
+++ b/src/mongo/db/catalog/collection_mock.h
@@ -40,10 +40,16 @@ namespace mongo {
*/
class CollectionMock : public Collection {
public:
- CollectionMock(const NamespaceString& ns)
+ explicit CollectionMock(const NamespaceString& ns)
: CollectionMock(ns, std::unique_ptr<IndexCatalog>()) {}
+ CollectionMock(const UUID& uuid, const NamespaceString& ns)
+ : CollectionMock(uuid, ns, std::unique_ptr<IndexCatalog>()) {}
CollectionMock(const NamespaceString& ns, std::unique_ptr<IndexCatalog> indexCatalog)
- : _ns(ns), _indexCatalog(std::move(indexCatalog)) {}
+ : CollectionMock(UUID::gen(), ns, std::unique_ptr<IndexCatalog>()) {}
+ CollectionMock(const UUID& uuid,
+ const NamespaceString& ns,
+ std::unique_ptr<IndexCatalog> indexCatalog)
+ : _uuid(uuid), _ns(ns), _indexCatalog(std::move(indexCatalog)) {}
CollectionMock(const NamespaceString& ns, RecordId catalogId)
: _ns(ns), _catalogId(catalogId) {}
~CollectionMock() = default;