コード例 #1
0
        public void SequentialUuidGenerator_ExtractTimestamp_should_work()
        {
            var sequentialGuidGenerator = new SequentialUuidGenerator();
            var id = sequentialGuidGenerator.GenerateGuid();
            var timestamp = SequentialUuidGenerator.ExtractTimestamp(id);

            DateTime.Now.ToUniversalTime().Subtract(timestamp).Should().BeLessThan(new TimeSpan(0, 0, 1));
        }
コード例 #2
0
        public void SequentialGuidGenerator_generates_Guids_that_are_sequential()
        {
            var sequentialUuidGenerator = new SequentialUuidGenerator();

            var generatedIds = new List<Guid>();
            for(var i = 0; i < 10000; i++)
                generatedIds.Add(sequentialUuidGenerator.GenerateGuid());

            generatedIds.Should().BeInAscendingOrder();
        }
コード例 #3
0
        public void SequentialGuidGenerator_generates_Guids_that_are_unique()
        {
            var sequentialUuidGenerator = new SequentialUuidGenerator();

            int iterations = 100000;
            var generatedIds = new Guid[iterations];
            for(var i = 0; i < iterations; i++)
                generatedIds[i] = sequentialUuidGenerator.GenerateGuid();

            var hashSet = new HashSet<Guid>();
            for(var i = 0; i < iterations; i++)
                hashSet.Add(generatedIds[i]).Should().BeTrue();
        }
コード例 #4
0
        public void SequentialUuidGenerator_IsSequentialUuid_should_return_true_for_value_we_generated()
        {
            var sequentialUuidGenerator = new SequentialUuidGenerator();

            SequentialUuidGenerator.IsSequentialUuid(sequentialUuidGenerator.GenerateGuid()).Should().BeTrue();
        }