@@ -68,6 +68,39 @@ BOOST_AUTO_TEST_CASE(v1)
68
68
cass_uuid_gen_free (uuid_gen);
69
69
}
70
70
71
+ BOOST_AUTO_TEST_CASE (v1_min_max)
72
+ {
73
+ cass_uint64_t founded_ts = 1270080000 ; // April 2010
74
+ cass_uint64_t curr_ts = cass::get_time_since_epoch_in_ms ();
75
+
76
+ CassUuid min_uuid_1;
77
+ CassUuid min_uuid_2;
78
+ cass_uuid_min_from_time (founded_ts, &min_uuid_1);
79
+ cass_uuid_min_from_time (curr_ts, &min_uuid_2);
80
+ BOOST_CHECK (founded_ts == cass_uuid_timestamp (min_uuid_1));
81
+ BOOST_CHECK (curr_ts == cass_uuid_timestamp (min_uuid_2));
82
+ BOOST_CHECK (cass_uuid_version (min_uuid_1) == 1 );
83
+ BOOST_CHECK (cass_uuid_version (min_uuid_2) == 1 );
84
+ BOOST_CHECK_EQUAL (min_uuid_1.clock_seq_and_node , min_uuid_2.clock_seq_and_node );
85
+ BOOST_CHECK_NE (min_uuid_1.time_and_version , min_uuid_2.time_and_version );
86
+
87
+ CassUuid max_uuid_1;
88
+ CassUuid max_uuid_2;
89
+ cass_uuid_max_from_time (founded_ts, &max_uuid_1);
90
+ cass_uuid_max_from_time (curr_ts, &max_uuid_2);
91
+ BOOST_CHECK (founded_ts == cass_uuid_timestamp (max_uuid_1));
92
+ BOOST_CHECK (curr_ts == cass_uuid_timestamp (max_uuid_2));
93
+ BOOST_CHECK (cass_uuid_version (max_uuid_1) == 1 );
94
+ BOOST_CHECK (cass_uuid_version (max_uuid_2) == 1 );
95
+ BOOST_CHECK_EQUAL (max_uuid_1.clock_seq_and_node , max_uuid_2.clock_seq_and_node );
96
+ BOOST_CHECK_NE (max_uuid_1.time_and_version , max_uuid_2.time_and_version );
97
+
98
+ BOOST_CHECK_NE (min_uuid_1.clock_seq_and_node , max_uuid_1.clock_seq_and_node );
99
+ BOOST_CHECK_NE (min_uuid_1.clock_seq_and_node , max_uuid_2.clock_seq_and_node );
100
+ BOOST_CHECK_NE (min_uuid_2.clock_seq_and_node , max_uuid_1.clock_seq_and_node );
101
+ BOOST_CHECK_NE (min_uuid_2.clock_seq_and_node , max_uuid_2.clock_seq_and_node );
102
+ }
103
+
71
104
BOOST_AUTO_TEST_CASE (v1_node)
72
105
{
73
106
CassUuidGen* uuid_gen = cass_uuid_gen_new_with_node (0x0000112233445566LL );
0 commit comments