summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2020-08-01 14:25:50 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-08-01 18:52:39 +0000
commit7cdef9c3982206dfc2fdd3b660d4e4d6f5e5d9e9 (patch)
tree5d7ffd099094fcf305b4ab6f0920bf7bc1601b1e
parent98f525dc3cb20fe3a196976bac08bcb62fa30618 (diff)
downloadmongo-7cdef9c3982206dfc2fdd3b660d4e4d6f5e5d9e9.tar.gz
SERVER-49800 fix use-after-move violations in tests
-rw-r--r--src/mongo/base/data_builder_test.cpp6
-rw-r--r--src/mongo/base/status_test.cpp24
-rw-r--r--src/mongo/bson/bsonobjbuilder_test.cpp4
-rw-r--r--src/mongo/db/exec/document_value/document_metadata_fields_test.cpp4
-rw-r--r--src/mongo/db/exec/working_set_test.cpp6
-rw-r--r--src/mongo/db/keys_collection_document_test.cpp3
-rw-r--r--src/mongo/db/operation_context_test.cpp2
-rw-r--r--src/mongo/db/s/op_observer_sharding_test.cpp2
-rw-r--r--src/mongo/executor/thread_pool_task_executor_test.cpp4
-rw-r--r--src/mongo/util/producer_consumer_queue_test.cpp2
10 files changed, 28 insertions, 29 deletions
diff --git a/src/mongo/base/data_builder_test.cpp b/src/mongo/base/data_builder_test.cpp
index 0133ae20273..5a0abdc09a4 100644
--- a/src/mongo/base/data_builder_test.cpp
+++ b/src/mongo/base/data_builder_test.cpp
@@ -163,9 +163,9 @@ TEST(DataBuilder, Move) {
ASSERT_EQUALS(42u, db2.capacity());
ASSERT_EQUALS(2u, db2.size());
- ASSERT_EQUALS(0u, db.capacity());
- ASSERT_EQUALS(0u, db.size());
- ASSERT(!db.getCursor().data());
+ ASSERT_EQUALS(0u, db.capacity()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(0u, db.size()); // NOLINT(bugprone-use-after-move)
+ ASSERT(!db.getCursor().data()); // NOLINT(bugprone-use-after-move)
}
TEST(DataBuilder, TerminatedStringDatas) {
diff --git a/src/mongo/base/status_test.cpp b/src/mongo/base/status_test.cpp
index 1cb9094ad28..4be67a3f43b 100644
--- a/src/mongo/base/status_test.cpp
+++ b/src/mongo/base/status_test.cpp
@@ -108,8 +108,8 @@ TEST(Cloning, MoveCopyOK) {
Status dest(std::move(orig));
- ASSERT_TRUE(orig.isOK());
- ASSERT_EQUALS(orig.refCount(), 0U);
+ ASSERT_TRUE(orig.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(orig.refCount(), 0U); // NOLINT(bugprone-use-after-move)
ASSERT_TRUE(dest.isOK());
ASSERT_EQUALS(dest.refCount(), 0U);
@@ -122,8 +122,8 @@ TEST(Cloning, MoveCopyError) {
Status dest(std::move(orig));
- ASSERT_TRUE(orig.isOK());
- ASSERT_EQUALS(orig.refCount(), 0U);
+ ASSERT_TRUE(orig.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(orig.refCount(), 0U); // NOLINT(bugprone-use-after-move)
ASSERT_FALSE(dest.isOK());
ASSERT_EQUALS(dest.refCount(), 1U);
@@ -142,8 +142,8 @@ TEST(Cloning, MoveAssignOKToOK) {
dest = std::move(orig);
- ASSERT_TRUE(orig.isOK());
- ASSERT_EQUALS(orig.refCount(), 0U);
+ ASSERT_TRUE(orig.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(orig.refCount(), 0U); // NOLINT(bugprone-use-after-move)
ASSERT_TRUE(dest.isOK());
ASSERT_EQUALS(dest.refCount(), 0U);
@@ -164,8 +164,8 @@ TEST(Cloning, MoveAssignErrorToError) {
dest = std::move(orig);
- ASSERT_TRUE(orig.isOK());
- ASSERT_EQUALS(orig.refCount(), 0U);
+ ASSERT_TRUE(orig.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(orig.refCount(), 0U); // NOLINT(bugprone-use-after-move)
ASSERT_FALSE(dest.isOK());
ASSERT_EQUALS(dest.refCount(), 1U);
@@ -186,8 +186,8 @@ TEST(Cloning, MoveAssignErrorToOK) {
dest = std::move(orig);
- ASSERT_TRUE(orig.isOK());
- ASSERT_EQUALS(orig.refCount(), 0U);
+ ASSERT_TRUE(orig.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(orig.refCount(), 0U); // NOLINT(bugprone-use-after-move)
ASSERT_FALSE(dest.isOK());
ASSERT_EQUALS(dest.refCount(), 1U);
@@ -213,8 +213,8 @@ TEST(Cloning, MoveAssignOKToError) {
ASSERT_EQUALS(orig.code(), ErrorCodes::MaxError);
ASSERT_EQUALS(orig.reason(), "error");
- ASSERT_TRUE(dest.isOK());
- ASSERT_EQUALS(dest.refCount(), 0U);
+ ASSERT_TRUE(dest.isOK()); // NOLINT(bugprone-use-after-move)
+ ASSERT_EQUALS(dest.refCount(), 0U); // NOLINT(bugprone-use-after-move)
}
TEST(Cloning, OKIsNotRefCounted) {
diff --git a/src/mongo/bson/bsonobjbuilder_test.cpp b/src/mongo/bson/bsonobjbuilder_test.cpp
index a807a19d35d..f8c992508bb 100644
--- a/src/mongo/bson/bsonobjbuilder_test.cpp
+++ b/src/mongo/bson/bsonobjbuilder_test.cpp
@@ -358,7 +358,7 @@ TEST(BSONObjBuilderTest, SeedingBSONObjBuilderWithRootedUnsharedOwnedBsonWorks)
BSONObjBuilder bob(std::move(origObj)); // moving.
bob.append("b", 1);
const auto obj = bob.obj();
- ASSERT_BSONOBJ_EQ(origObj, BSONObj());
+ ASSERT_BSONOBJ_EQ(origObj, BSONObj()); // NOLINT(bugprone-use-after-move)
ASSERT_BSONOBJ_EQ(obj, BSON("a" << 1 << "b" << 1));
ASSERT_EQ(static_cast<const void*>(obj.objdata()), static_cast<const void*>(origObjPtr));
}
@@ -398,7 +398,7 @@ TEST(BSONObjBuilderTest, SeedingBSONObjBuilderWithNonrootedUnsharedOwnedBsonWork
BSONObjBuilder bob(std::move(origObj)); // moving.
bob.append("b", 1);
const auto obj = bob.obj();
- ASSERT_BSONOBJ_EQ(origObj, BSONObj());
+ ASSERT_BSONOBJ_EQ(origObj, BSONObj()); // NOLINT(bugprone-use-after-move)
ASSERT_BSONOBJ_EQ(obj, BSON("a" << 1 << "b" << 1));
ASSERT_EQ(static_cast<const void*>(obj.objdata()), static_cast<const void*>(origObjPtr));
}
diff --git a/src/mongo/db/exec/document_value/document_metadata_fields_test.cpp b/src/mongo/db/exec/document_value/document_metadata_fields_test.cpp
index b19127ef226..b783406ce29 100644
--- a/src/mongo/db/exec/document_value/document_metadata_fields_test.cpp
+++ b/src/mongo/db/exec/document_value/document_metadata_fields_test.cpp
@@ -139,7 +139,7 @@ TEST(DocumentMetadataFieldsTest, MoveConstructor) {
ASSERT_VALUE_EQ(moveConstructed.getSearchHighlights(), Value{"foo"_sd});
ASSERT_BSONOBJ_EQ(moveConstructed.getIndexKey(), BSON("b" << 1));
- ASSERT_FALSE(metadata);
+ ASSERT_FALSE(metadata); // NOLINT(bugprone-use-after-move)
}
TEST(DocumentMetadataFieldsTest, MoveAssignmentOperator) {
@@ -168,7 +168,7 @@ TEST(DocumentMetadataFieldsTest, MoveAssignmentOperator) {
ASSERT_VALUE_EQ(moveAssigned.getSearchHighlights(), Value{"foo"_sd});
ASSERT_BSONOBJ_EQ(moveAssigned.getIndexKey(), BSON("b" << 1));
- ASSERT_FALSE(metadata);
+ ASSERT_FALSE(metadata); // NOLINT(bugprone-use-after-move)
}
TEST(DocumentMetadataFieldsTest, CopyConstructor) {
diff --git a/src/mongo/db/exec/working_set_test.cpp b/src/mongo/db/exec/working_set_test.cpp
index 230c2d81a1a..a66d81e5b6a 100644
--- a/src/mongo/db/exec/working_set_test.cpp
+++ b/src/mongo/db/exec/working_set_test.cpp
@@ -175,9 +175,9 @@ TEST_F(WorkingSetFixture, MetadataCanBeCorrectlyTransferredBackAndForthFromDocum
MutableDocument md{std::move(document)};
md.setMetadata(std::move(releasedMetadata));
document = md.freeze();
- ASSERT_FALSE(releasedMetadata);
- ASSERT_FALSE(releasedMetadata.hasTextScore());
- ASSERT_FALSE(releasedMetadata.hasSearchScore());
+ ASSERT_FALSE(releasedMetadata); // NOLINT(bugprone-use-after-move)
+ ASSERT_FALSE(releasedMetadata.hasTextScore()); // NOLINT(bugprone-use-after-move)
+ ASSERT_FALSE(releasedMetadata.hasSearchScore()); // NOLINT(bugprone-use-after-move)
ASSERT_TRUE(document.metadata());
ASSERT_TRUE(document.metadata().hasTextScore());
ASSERT_TRUE(document.metadata().hasSearchScore());
diff --git a/src/mongo/db/keys_collection_document_test.cpp b/src/mongo/db/keys_collection_document_test.cpp
index 4e4b4ec0b5d..dfa6124a212 100644
--- a/src/mongo/db/keys_collection_document_test.cpp
+++ b/src/mongo/db/keys_collection_document_test.cpp
@@ -49,8 +49,7 @@ TEST(KeysCollectionDocument, Roundtrip) {
const auto expiresAt = LogicalTime(Timestamp(100, 200));
- KeysCollectionDocument keysCollectionDoc(
- keyId, std::move(purpose), std::move(key), std::move(expiresAt));
+ KeysCollectionDocument keysCollectionDoc(keyId, purpose, key, expiresAt);
auto serializedObj = keysCollectionDoc.toBSON();
diff --git a/src/mongo/db/operation_context_test.cpp b/src/mongo/db/operation_context_test.cpp
index 33beb6cf112..a9c3ad9436c 100644
--- a/src/mongo/db/operation_context_test.cpp
+++ b/src/mongo/db/operation_context_test.cpp
@@ -201,7 +201,7 @@ TEST(OperationContextTest, OpCtxGroup) {
auto p3 = opCtx3.opCtx();
auto opCtx4 = group4.take(std::move(opCtx3));
ASSERT_EQ(p3, opCtx4.opCtx());
- ASSERT(opCtx3.opCtx() == nullptr);
+ ASSERT(opCtx3.opCtx() == nullptr); // NOLINT(bugprone-use-after-move)
ASSERT_TRUE(group3.isEmpty());
ASSERT_FALSE(group4.isEmpty());
group3.interrupt(ErrorCodes::InternalError);
diff --git a/src/mongo/db/s/op_observer_sharding_test.cpp b/src/mongo/db/s/op_observer_sharding_test.cpp
index eaf8e55f78b..4c328b6936f 100644
--- a/src/mongo/db/s/op_observer_sharding_test.cpp
+++ b/src/mongo/db/s/op_observer_sharding_test.cpp
@@ -43,11 +43,11 @@ const NamespaceString kTestNss("TestDB", "TestColl");
void setCollectionFilteringMetadata(OperationContext* opCtx, CollectionMetadata metadata) {
AutoGetCollection autoColl(opCtx, kTestNss, MODE_X);
+ const auto version = metadata.getShardVersion();
CollectionShardingRuntime::get(opCtx, kTestNss)
->setFilteringMetadata(opCtx, std::move(metadata));
auto& oss = OperationShardingState::get(opCtx);
- const auto version = metadata.getShardVersion();
BSONObjBuilder builder;
version.appendToCommand(&builder);
oss.initializeClientRoutingVersionsFromCommand(kTestNss, builder.obj());
diff --git a/src/mongo/executor/thread_pool_task_executor_test.cpp b/src/mongo/executor/thread_pool_task_executor_test.cpp
index fed4f56962d..c436417be3d 100644
--- a/src/mongo/executor/thread_pool_task_executor_test.cpp
+++ b/src/mongo/executor/thread_pool_task_executor_test.cpp
@@ -112,7 +112,7 @@ TEST_F(ThreadPoolExecutorTest, OnEvent) {
};
ASSERT_OK(executor.onEvent(event, std::move(cb)).getStatus());
// Callback was moved from.
- ASSERT(!cb);
+ ASSERT(!cb); // NOLINT(bugprone-use-after-move)
executor.signalEvent(event);
barrier.countDownAndWait();
ASSERT_OK(status1);
@@ -133,7 +133,7 @@ TEST_F(ThreadPoolExecutorTest, OnEventAfterShutdown) {
executor.onEvent(event, std::move(cb)).getStatus());
// Callback was not moved from, it is still valid and we can call it to set status1.
- ASSERT(static_cast<bool>(cb));
+ ASSERT(cb); // NOLINT(bugprone-use-after-move)
TaskExecutor::CallbackArgs args(&executor, {}, Status::OK());
cb(args);
ASSERT_OK(status1);
diff --git a/src/mongo/util/producer_consumer_queue_test.cpp b/src/mongo/util/producer_consumer_queue_test.cpp
index b0f319c8711..dd9c9836816 100644
--- a/src/mongo/util/producer_consumer_queue_test.cpp
+++ b/src/mongo/util/producer_consumer_queue_test.cpp
@@ -319,7 +319,7 @@ PRODUCER_CONSUMER_QUEUE_TEST(pushesWithTimeout, runTimeoutPermutations<false, fa
{
MoveOnly mo(1);
pcq.push(std::move(mo));
- ASSERT(mo.movedFrom());
+ ASSERT(mo.movedFrom()); // NOLINT(bugprone-use-after-move)
}
helper