summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/repl_set_config_test.cpp
diff options
context:
space:
mode:
authorWilliam Schultz <william.schultz@mongodb.com>2020-02-04 21:49:45 +0000
committerevergreen <evergreen@mongodb.com>2020-02-04 21:49:45 +0000
commit7fa0a642fa7e99740b83e61040b01498dfb889eb (patch)
tree39c84b3c1a2deae115193c7471a93450f9e950ad /src/mongo/db/repl/repl_set_config_test.cpp
parente79dc5d3c154e1cbc5d071f5e3725ea7c9563179 (diff)
downloadmongo-7fa0a642fa7e99740b83e61040b01498dfb889eb.tar.gz
SERVER-45082 Add ConfigVersionAndTerm structure for comparing replica set configs
Diffstat (limited to 'src/mongo/db/repl/repl_set_config_test.cpp')
-rw-r--r--src/mongo/db/repl/repl_set_config_test.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/mongo/db/repl/repl_set_config_test.cpp b/src/mongo/db/repl/repl_set_config_test.cpp
index ddebd5f25f9..bdb4770bfa2 100644
--- a/src/mongo/db/repl/repl_set_config_test.cpp
+++ b/src/mongo/db/repl/repl_set_config_test.cpp
@@ -1714,6 +1714,27 @@ TEST(ReplSetConfig, ReplSetId) {
"\"replicaSetId\" had the wrong type. Expected objectId, found int");
}
+TEST(ReplSetConfig, ConfigVersionAndTermComparison) {
+ // Test equality.
+ ASSERT_EQ(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(1, 1));
+ ASSERT_EQ(ConfigVersionAndTerm(1, 2), ConfigVersionAndTerm(1, 2));
+ ASSERT_EQ(ConfigVersionAndTerm(2, 2), ConfigVersionAndTerm(2, 2));
+ ASSERT_EQ(ConfigVersionAndTerm(1, -1), ConfigVersionAndTerm(1, 1));
+ ASSERT_EQ(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(1, -1));
+ ASSERT_EQ(ConfigVersionAndTerm(1, -1), ConfigVersionAndTerm(1, -1));
+ // Test greater/less than or equal to.
+ ASSERT_GT(ConfigVersionAndTerm(2, 1), ConfigVersionAndTerm(1, 1));
+ ASSERT_GTE(ConfigVersionAndTerm(2, 1), ConfigVersionAndTerm(1, 1));
+ ASSERT_GT(ConfigVersionAndTerm(1, 2), ConfigVersionAndTerm(1, 1));
+ ASSERT_GTE(ConfigVersionAndTerm(1, 2), ConfigVersionAndTerm(1, 1));
+ ASSERT_LT(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(2, 1));
+ ASSERT_LTE(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(2, 1));
+ ASSERT_LT(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(1, 2));
+ ASSERT_LTE(ConfigVersionAndTerm(1, 1), ConfigVersionAndTerm(1, 2));
+ ASSERT_GT(ConfigVersionAndTerm(2, 1), ConfigVersionAndTerm(1, -1));
+ ASSERT_GT(ConfigVersionAndTerm(2, -1), ConfigVersionAndTerm(1, 1));
+ ASSERT_GT(ConfigVersionAndTerm(2, -1), ConfigVersionAndTerm(1, -1));
+}
} // namespace
} // namespace repl
} // namespace mongo