Exemplo n.º 1
0
        public void EqualsWorksAsExpected()
        {
            // --- Arrange
            var aspect1 = new Aspect1();
            var aspect2 = new Aspect2();
            var aspect3 = new Aspect3();

            var chain = new AspectChain(
                new List<IMethodAspect>
                    {
                        aspect1,
                        aspect2,
                        aspect3
                    });
            var otherChain = new AspectChain(new DummyAspect(1), new DummyAspect(2));

            // --- Assert
            chain.Equals(null).ShouldBeFalse();
            // ReSharper disable EqualExpressionComparison
            chain.Equals(chain).ShouldBeTrue();
            // ReSharper restore EqualExpressionComparison
            chain.Equals(new AspectChain(
                new List<IMethodAspect>
                    {
                        aspect1,
                        aspect2,
                        aspect3
                    })).ShouldBeTrue();
            chain.Equals(new AspectChain(
                new List<IMethodAspect>
                    {
                        aspect1,
                        aspect2
                    })).ShouldBeFalse();
            // ReSharper disable SuspiciousTypeConversion.Global
            otherChain.Equals("hey").ShouldBeFalse();
            // ReSharper restore SuspiciousTypeConversion.Global
            // ReSharper disable EqualExpressionComparison
            otherChain.Equals(otherChain).ShouldBeTrue();
            // ReSharper restore EqualExpressionComparison
            otherChain.Equals(new AspectChain(new DummyAspect(1), new DummyAspect(2)))
                      .ShouldBeTrue();
            otherChain.Equals(new AspectChain(new DummyAspect(2), new DummyAspect(3)))
                      .ShouldBeFalse();
        }
Exemplo n.º 2
0
        public void EqualsWorksAsExpected()
        {
            // --- Arrange
            var aspect1 = new Aspect1();
            var aspect2 = new Aspect2();
            var aspect3 = new Aspect3();

            var chain = new AspectChain(
                new List <IMethodAspect>
            {
                aspect1,
                aspect2,
                aspect3
            });
            var otherChain = new AspectChain(new DummyAspect(1), new DummyAspect(2));

            // --- Assert
            chain.Equals(null).ShouldBeFalse();
            // ReSharper disable EqualExpressionComparison
            chain.Equals(chain).ShouldBeTrue();
            // ReSharper restore EqualExpressionComparison
            chain.Equals(new AspectChain(
                             new List <IMethodAspect>
            {
                aspect1,
                aspect2,
                aspect3
            })).ShouldBeTrue();
            chain.Equals(new AspectChain(
                             new List <IMethodAspect>
            {
                aspect1,
                aspect2
            })).ShouldBeFalse();
            // ReSharper disable SuspiciousTypeConversion.Global
            otherChain.Equals("hey").ShouldBeFalse();
            // ReSharper restore SuspiciousTypeConversion.Global
            // ReSharper disable EqualExpressionComparison
            otherChain.Equals(otherChain).ShouldBeTrue();
            // ReSharper restore EqualExpressionComparison
            otherChain.Equals(new AspectChain(new DummyAspect(1), new DummyAspect(2)))
            .ShouldBeTrue();
            otherChain.Equals(new AspectChain(new DummyAspect(2), new DummyAspect(3)))
            .ShouldBeFalse();
        }