/Framework/src/Ncqrs.Tests/BasicGuidGeneratorSpecs.cs
C# | 47 lines | 37 code | 10 blank | 0 comment | 1 complexity | 1a35fe8328f1c7f29b48f30955d9772a MD5 | raw file
Possible License(s): MPL-2.0-no-copyleft-exception, Apache-2.0
- using System;
- using FluentAssertions;
- using System.Collections.Generic;
- using Xunit;
-
- namespace Ncqrs.Tests
- {
- public class BasicGuidGeneratorSpecs
- {
- [Fact]
- public void When_getting_a_new_identifier_it_should_not_be_empty()
- {
- var generator = new BasicGuidGenerator();
-
- var newIdentifier = generator.GenerateNewId();
-
- newIdentifier.Should().NotBe(Guid.Empty);
- }
-
- [Fact]
- public void When_getting_a_new_identifier_twice_they_should_not_be_the_same()
- {
- var generator = new BasicGuidGenerator();
-
- var firstIdentifier = generator.GenerateNewId();
- var secondIdentifier = generator.GenerateNewId();
-
- firstIdentifier.Should().NotBe(secondIdentifier);
- }
-
- [Fact]
- public void When_getting_a_new_identifier_multiple_times_they_should_all_be_unique()
- {
- var generator = new BasicGuidGenerator();
- var identifiers = new HashSet<Guid>();
-
- for (int i = 0; i < 500; i++)
- {
- var newId = generator.GenerateNewId();
-
- identifiers.Should().NotContain(newId);
-
- identifiers.Add(newId);
- }
- }
- }
- }