Esempio n. 1
0
        public void GraphEqualsNullSecondWithEqualityComparerThrows()
        {
            var dummyNode             = new CompositeSpecimenBuilder();
            var dummyEqualityComparer = new DelegatingEqualityComparer <ISpecimenBuilder>();

            Assert.Throws <ArgumentNullException>(() =>
                                                  dummyNode.GraphEquals(null, dummyEqualityComparer));
        }
Esempio n. 2
0
        public void ComparerIsCorrect()
        {
            var expected = new DelegatingEqualityComparer<decimal>();
            var sut = new Criterion<decimal>(1337m, expected);

            var actual = sut.Comparer;

            Assert.Equal(expected, actual);
        }
Esempio n. 3
0
        public void ConstructWithNullTargetAndDummyComparerThrows()
        {
            // Arrange
            var dummyComparer = new DelegatingEqualityComparer();

            // Act & assert
            Assert.Throws <ArgumentNullException>(() =>
                                                  new EqualRequestSpecification(null, dummyComparer));
        }
Esempio n. 4
0
        public void ComparerIsCorrect()
        {
            var expected = new DelegatingEqualityComparer <decimal>();
            var sut      = new Criterion <decimal>(1337m, expected);

            var actual = sut.Comparer;

            Assert.Equal(expected, actual);
        }
Esempio n. 5
0
        public void ConstructWithNullTargetAndDummyComparerThrows()
        {
            // Fixture setup
            var dummyComparer = new DelegatingEqualityComparer();

            // Exercise system and verify outcome
            Assert.Throws <ArgumentNullException>(() =>
                                                  new EqualRequestSpecification(null, dummyComparer));
            // Teardown
        }
Esempio n. 6
0
        public void SutEqualsIdenticalValue()
        {
            var target = Guid.NewGuid();
            var comparer = new DelegatingEqualityComparer<Guid>();
            var sut = new Criterion<Guid>(target, comparer);

            var other = new Criterion<Guid>(target, comparer);
            var actual = sut.Equals(other);

            Assert.True(actual, "Expected structural equality to hold.");
        }
Esempio n. 7
0
        public void SutEqualsIdenticalValue()
        {
            var target   = Guid.NewGuid();
            var comparer = new DelegatingEqualityComparer <Guid>();
            var sut      = new Criterion <Guid>(target, comparer);

            var other  = new Criterion <Guid>(target, comparer);
            var actual = sut.Equals(other);

            Assert.True(actual, "Expected structural equality to hold.");
        }
Esempio n. 8
0
        public void ComparerIsCorrect()
        {
            // Arrange
            var expected    = new DelegatingEqualityComparer();
            var dummyTarget = new object();
            var sut         = new EqualRequestSpecification(dummyTarget, expected);
            // Act
            IEqualityComparer actual = sut.Comparer;

            // Assert
            Assert.Equal(expected, actual);
        }
 public void ComposeRetainsComparer()
 {
     // Fixture setup
     var dummyBuilder = new DelegatingSpecimenBuilder();
     var expected = new DelegatingEqualityComparer();
     var sut = new NullRecursionGuard(dummyBuilder, expected);
     // Exercise system
     var actual = sut.Compose(new ISpecimenBuilder[0]);
     // Verify outcome
     var rg = Assert.IsAssignableFrom<NullRecursionGuard>(actual);
     Assert.Equal(expected, rg.Comparer);
     // Teardown
 }
Esempio n. 10
0
        public void ComposeRetainsComparer()
        {
            // Arrange
            var dummyBuilder = new DelegatingSpecimenBuilder();
            var expected     = new DelegatingEqualityComparer();
            var sut          = new NullRecursionGuard(dummyBuilder, expected);
            // Act
            var actual = sut.Compose(new ISpecimenBuilder[0]);
            // Assert
            var rg = Assert.IsAssignableFrom <NullRecursionGuard>(actual);

            Assert.Equal(expected, rg.Comparer);
        }
Esempio n. 11
0
        public void ComparerIsCorrect()
        {
            // Fixture setup
            var expected    = new DelegatingEqualityComparer();
            var dummyTarget = new object();
            var sut         = new EqualRequestSpecification(dummyTarget, expected);
            // Exercise system
            IEqualityComparer actual = sut.Comparer;

            // Verify outcome
            Assert.Equal(expected, actual);
            // Teardown
        }
Esempio n. 12
0
        public void SutDoesNotEqualOtherWhenTargetDiffers(
            int sutTarget,
            int otherTarget)
        {
            var comparer = new DelegatingEqualityComparer <int>();
            var sut      = new Criterion <int>(sutTarget, comparer);

            var other  = new Criterion <int>(otherTarget, comparer);
            var actual = sut.Equals(other);

            Assert.False(
                actual,
                "SUT shouldn't equal other with different target");
        }
Esempio n. 13
0
        public void ComposeRetainsComparer()
        {
            // Fixture setup
            var dummyBuilder = new DelegatingSpecimenBuilder();
            var expected     = new DelegatingEqualityComparer();
            var sut          = new ThrowingRecursionGuard(dummyBuilder, expected);
            // Exercise system
            var actual = sut.Compose(new ISpecimenBuilder[0]);
            // Verify outcome
            var rg = Assert.IsAssignableFrom <ThrowingRecursionGuard>(actual);

            Assert.Equal(expected, rg.Comparer);
            // Teardown
        }
Esempio n. 14
0
        public void EmptyNodesAreEqualAccordingToComparer(bool expected)
        {
            // Arrange
            var node1    = new CompositeSpecimenBuilder();
            var node2    = new CompositeSpecimenBuilder();
            var comparer = new DelegatingEqualityComparer <ISpecimenBuilder>
            {
                OnEquals = (x, y) => x == node1 && y == node2 && expected
            };
            // Act
            var actual = node1.GraphEquals(node2, comparer);

            // Assert
            Assert.Equal(expected, actual);
        }
Esempio n. 15
0
        public void IsSatisfiedByReturnsResultFromComparer(bool expected)
        {
            // Arrange
            var target   = new object();
            var other    = new object();
            var comparer = new DelegatingEqualityComparer
            {
                OnEquals = (x, y) => x == target && y == other && expected
            };
            var sut = new EqualRequestSpecification(target, comparer);
            // Act
            var actual = sut.IsSatisfiedBy(other);

            // Assert
            Assert.Equal(expected, actual);
        }
 public void IsSatisfiedByReturnsResultFromComparer(bool expected)
 {
     // Fixture setup
     var target = new object();
     var other = new object();
     var comparer = new DelegatingEqualityComparer
     {
         OnEquals = (x, y) => x == target && y == other && expected
     };
     var sut = new EqualRequestSpecification(target, comparer);
     // Exercise system
     var actual = sut.IsSatisfiedBy(other);
     // Verify outcome
     Assert.Equal(expected, actual);
     // Teardown
 }
Esempio n. 17
0
        public void EmptyNodesAreEqualAccordingToComparer(bool expected)
        {
            // Fixture setup
            var node1    = new CompositeSpecimenBuilder();
            var node2    = new CompositeSpecimenBuilder();
            var comparer = new DelegatingEqualityComparer <ISpecimenBuilder>
            {
                OnEquals = (x, y) => x == node1 && y == node2 && expected
            };
            // Exercise system
            var actual = node1.GraphEquals(node2, comparer);

            // Verify outcome
            Assert.Equal(expected, actual);
            // Teardown
        }
Esempio n. 18
0
        public void IsSatisfiedByReturnsResultFromComparer(bool expected)
        {
            // Fixture setup
            var target   = new object();
            var other    = new object();
            var comparer = new DelegatingEqualityComparer
            {
                OnEquals = (x, y) => x == target && y == other && expected
            };
            var sut = new EqualRequestSpecification(target, comparer);
            // Exercise system
            var actual = sut.IsSatisfiedBy(other);

            // Verify outcome
            Assert.Equal(expected, actual);
            // Teardown
        }
Esempio n. 19
0
        public void EqualsReturnsComparerResult(
            string target,
            string candidate,
            bool expected)
        {
            var comparer = new DelegatingEqualityComparer<string>
            {
                OnEquals = (x, y) =>
                {
                    Assert.Equal(target, x);
                    Assert.Equal(candidate, y);
                    return expected;
                }
            };
            var sut = new Criterion<string>(target, comparer);

            var actual = sut.Equals(candidate);

            Assert.Equal(expected, actual);
        }
Esempio n. 20
0
        public void EqualsReturnsComparerResult(
            string target,
            string candidate,
            bool expected)
        {
            var comparer = new DelegatingEqualityComparer <string>
            {
                OnEquals = (x, y) =>
                {
                    Assert.Equal(target, x);
                    Assert.Equal(candidate, y);
                    return(expected);
                }
            };
            var sut = new Criterion <string>(target, comparer);

            var actual = sut.Equals(candidate);

            Assert.Equal(expected, actual);
        }
Esempio n. 21
0
 public OperationEqualityVisitor()
 {
     equalityComparerForOperations =
         new DelegatingEqualityComparer <IOperation>((left, right) => left.Accept(this, right));
     equalityComparerForSymbols = new DelegatingEqualityComparer <ISymbol>((left, right) => left.Equals(right));
 }
Esempio n. 22
0
        public void SutDoesNotEqualOtherWhenTargetDiffers(
            int sutTarget,
            int otherTarget)
        {
            var comparer = new DelegatingEqualityComparer<int>();
            var sut = new Criterion<int>(sutTarget, comparer);

            var other = new Criterion<int>(otherTarget, comparer);
            var actual = sut.Equals(other);

            Assert.False(
                actual,
                "SUT shouldn't equal other with different target");
        }
 public void ConstructWithNullTargetAndDummyComparerThrows()
 {
     // Fixture setup
     var dummyComparer = new DelegatingEqualityComparer();
     // Exercise system and verify outcome
     Assert.Throws<ArgumentNullException>(() =>
         new EqualRequestSpecification(null, dummyComparer));
     // Teardown
 }
 public void ComparerIsCorrect()
 {
     // Fixture setup
     var expected = new DelegatingEqualityComparer();
     var dummyTarget = new object();
     var sut = new EqualRequestSpecification(dummyTarget, expected);
     // Exercise system
     IEqualityComparer actual = sut.Comparer;
     // Verify outcome
     Assert.Equal(expected, actual);
     // Teardown
 }