summaryrefslogtreecommitdiff
path: root/src/mongo/s/chunk_version_test.cpp
diff options
context:
space:
mode:
authorGreg Studer <greg@10gen.com>2014-01-16 12:40:27 -0500
committergregs <greg@10gen.com>2014-01-23 11:29:56 -0500
commitcf99842a3a495cb86efca4d702fb8a45e5768072 (patch)
treee9c25e724305877746ce5d4b514310905602f330 /src/mongo/s/chunk_version_test.cpp
parenta6c4e86b0aba95fd34ef4b912909e9dd89d8425e (diff)
downloadmongo-cf99842a3a495cb86efca4d702fb8a45e5768072.tar.gz
SERVER-12367 detect halted progress in write command execution, report error
Diffstat (limited to 'src/mongo/s/chunk_version_test.cpp')
-rw-r--r--src/mongo/s/chunk_version_test.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/mongo/s/chunk_version_test.cpp b/src/mongo/s/chunk_version_test.cpp
index c5136ac34dc..52183487e21 100644
--- a/src/mongo/s/chunk_version_test.cpp
+++ b/src/mongo/s/chunk_version_test.cpp
@@ -96,5 +96,34 @@ namespace {
ASSERT( parsed.epoch().isSet() );
}
+ TEST(Comparison, StrictEqual) {
+
+ OID epoch = OID::gen();
+
+ ASSERT( ChunkVersion( 3, 1, epoch ).isStrictlyEqualTo( ChunkVersion( 3, 1, epoch ) ) );
+ ASSERT( !ChunkVersion( 3, 1, epoch ).isStrictlyEqualTo( ChunkVersion( 3, 1, OID() ) ) );
+ ASSERT( !ChunkVersion( 3, 1, OID() ).isStrictlyEqualTo( ChunkVersion( 3, 1, epoch ) ) );
+ ASSERT( ChunkVersion( 3, 1, OID() ).isStrictlyEqualTo( ChunkVersion( 3, 1, OID() ) ) );
+ ASSERT( !ChunkVersion( 4, 2, epoch ).isStrictlyEqualTo( ChunkVersion( 4, 1, epoch ) ) );
+ }
+
+ TEST(Comparison, OlderThan) {
+
+ OID epoch = OID::gen();
+
+ ASSERT( ChunkVersion( 3, 1, epoch ).isOlderThan( ChunkVersion( 4, 1, epoch ) ) );
+ ASSERT( !ChunkVersion( 4, 1, epoch ).isOlderThan( ChunkVersion( 3, 1, epoch ) ) );
+
+ ASSERT( ChunkVersion( 3, 1, epoch ).isOlderThan( ChunkVersion( 3, 2, epoch ) ) );
+ ASSERT( !ChunkVersion( 3, 2, epoch ).isOlderThan( ChunkVersion( 3, 1, epoch ) ) );
+
+ ASSERT( !ChunkVersion( 3, 1, epoch ).isOlderThan( ChunkVersion( 4, 1, OID() ) ) );
+ ASSERT( !ChunkVersion( 4, 1, OID() ).isOlderThan( ChunkVersion( 3, 1, epoch ) ) );
+
+ ASSERT( ChunkVersion( 3, 2, epoch ).isOlderThan( ChunkVersion( 4, 1, epoch ) ) );
+
+ ASSERT( !ChunkVersion( 3, 1, epoch ).isOlderThan( ChunkVersion( 3, 1, epoch ) ) );
+ }
+
} // unnamed namespace
} // namespace mongo