public void ShouldNotBeEqualWhenValuesAreDifferent()
            {
                // arrange
                var stronglyTypedId        = new GuidFor <Order>(Guid.NewGuid());
                var anotherStronglyTypedId = new GuidFor <Order>(Guid.NewGuid());

                // act
                var result = stronglyTypedId.Equals(anotherStronglyTypedId);

                // assert
                result.Should().BeFalse();
            }
Example #2
0
            public void ShouldNotBeEqualWithIEntityIdWhenValuesAreDifferent()
            {
                // arrange
                var stronglyTypedId = new IdFor <Order, Guid>(Guid.NewGuid());
                IEntityId <Order, Guid> anotherStronglyTypedId = new GuidFor <Order>(Guid.NewGuid());

                // act
                var result = stronglyTypedId != anotherStronglyTypedId;

                // assert
                result.Should().BeTrue();
            }
Example #3
0
            public void ShouldThrowWhenCompareWithNoEntityId()
            {
                // arrange
                var stronglyTypedId = new GuidFor <Order>(Guid.NewGuid());
                var someObject      = new Order();

                // act
                Func <int> act = () => stronglyTypedId.CompareTo(someObject);

                // assert
                act.Should().Throw <ArgumentException>();
            }
Example #4
0
            public void ShouldProvide0ForSameId()
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var result = stronglyTypedId.CompareTo(stronglyTypedId);

                // assert
                result.Should().Be(0);
            }
Example #5
0
            public void ShouldProvideFormattedWithFormatterValueString(string format, CultureInfo cultureInfo)
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var providedValue = stronglyTypedId.ToString(format, cultureInfo);

                // assert
                providedValue.Should().Be(targetId.ToString(format, cultureInfo));
            }
Example #6
0
            public void ShouldProvideValueString()
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var providedValue = stronglyTypedId.ToString();

                // assert
                providedValue.Should().Be(targetId.ToString());
            }
Example #7
0
            public void ShouldBeEqualWithIEntityIdWhenValuesAndEntitiesAreEqual()
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new IdFor <Order, Guid>(targetId);
                IEntityId <Order, Guid> anotherStronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var result = stronglyTypedId != anotherStronglyTypedId;

                // assert
                result.Should().BeFalse();
            }
            public void ShouldNotBeEqualWithIEntityIdWhenEntitiesAreDifferent()
            {
                // arrange
                var targetId               = Guid.NewGuid();
                var stronglyTypedId        = new GuidFor <Order>(targetId);
                var anotherStronglyTypedId = new IdFor <PricePosition, Guid>(targetId);

                // act
                var result = stronglyTypedId.Equals(anotherStronglyTypedId);

                // assert
                result.Should().BeFalse();
            }
            public void ShouldBeEqualWhenValuesAndEntitiesAreEqual()
            {
                // arrange
                var targetId               = Guid.NewGuid();
                var stronglyTypedId        = new GuidFor <Order>(targetId);
                var anotherStronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var result = stronglyTypedId.Equals(anotherStronglyTypedId);

                // assert
                result.Should().BeTrue();
            }
            public void ShouldNotBeEqualWithIEntityIdWhenNull()
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new GuidFor <Order>(targetId);
                IEntityId <Order, Guid> anotherStronglyTypedId = null;

                // act
                var result = stronglyTypedId.Equals(anotherStronglyTypedId);

                // assert
                result.Should().BeFalse();
            }
Example #11
0
            public void ShouldProvide1WhenCompareToNullEntityId()
            {
                // arrange
                var targetId        = Guid.NewGuid();
                var stronglyTypedId = new GuidFor <Order>(targetId);


                // act
                var result = stronglyTypedId.CompareTo((IEntityId <Order, Guid>)null);

                // assert
                result.Should().Be(1);
            }
Example #12
0
            public void ShouldNotProvideSameHashCodeWhenValuesAreDifferent()
            {
                // arrange
                var stronglyTypedId        = new GuidFor <Order>(Guid.NewGuid());
                var anotherStronglyTypedId = new GuidFor <Order>(Guid.NewGuid());

                // act
                var hashCode1 = stronglyTypedId.GetHashCode();
                var hashCode2 = anotherStronglyTypedId.GetHashCode();

                // assert
                hashCode1.Should().NotBe(hashCode2);
            }
Example #13
0
            public void ShouldNotBeEqualWithIEntityIdWhenFirstNull()
            {
                // arrange
                IdFor <Order, Guid>     stronglyTypedId        = null;
                IEntityId <Order, Guid> anotherStronglyTypedId = new GuidFor <Order>(Guid.NewGuid());

                ;

                // act
                var result = stronglyTypedId != anotherStronglyTypedId;

                // assert
                result.Should().BeTrue();
            }
Example #14
0
            public void ShouldNotProvideSameHashCodeWhenEntitiesAreDifferent()
            {
                // arrange
                var targetId               = Guid.NewGuid();
                var stronglyTypedId        = new GuidFor <Order>(targetId);
                var anotherStronglyTypedId = new GuidFor <PricePosition>(targetId);

                // act
                var hashCode1 = stronglyTypedId.GetHashCode();
                var hashCode2 = anotherStronglyTypedId.GetHashCode();

                // assert
                hashCode1.Should().NotBe(hashCode2);
            }
Example #15
0
            public void ShouldProvideSameHashCodeWhenValuesAndEntitiesAreEqual()
            {
                // arrange
                var targetId               = Guid.NewGuid();
                var stronglyTypedId        = new GuidFor <Order>(targetId);
                var anotherStronglyTypedId = new GuidFor <Order>(targetId);

                // act
                var hashCode1 = stronglyTypedId.GetHashCode();
                var hashCode2 = anotherStronglyTypedId.GetHashCode();

                // assert
                hashCode1.Should().Be(hashCode2);
            }
Example #16
0
            public void ShouldProvideSameResultAsBaseIdsDoForEntityId()
            {
                // arrange
                var stronglyTypedId        = new GuidFor <Order>(Guid.NewGuid());
                var anotherStronglyTypedId = new GuidFor <Order>(Guid.NewGuid());

                // act
                var result1 = stronglyTypedId.CompareTo((IEntityId <Order, Guid>)anotherStronglyTypedId);
                var result2 = anotherStronglyTypedId.CompareTo((IEntityId <Order, Guid>)stronglyTypedId);

                var baseResult1 = stronglyTypedId.Value.CompareTo(anotherStronglyTypedId.Value);
                var baseResult2 = anotherStronglyTypedId.Value.CompareTo(stronglyTypedId.Value);

                // assert
                result1.Should().Be(baseResult1);
                result2.Should().Be(baseResult2);
            }