Beispiel #1
0
        public void ConstructionWorksWithMultipleAspect1()
        {
            // --- Arrange
            var chain = new AspectChain(new Aspect1(), new Aspect2());

            // --- Assert
            chain.ShouldHaveCountOf(2);
        }
        public void ConstructionWorksWithSingleAspect()
        {
            // --- Arrange
            var chain = new AspectChain(new Aspect1());

            // --- Assert
            chain.ShouldHaveCountOf(1);
        }
        public void ConstructionWorksWithMultipleAspect1()
        {
            // --- Arrange
            var chain = new AspectChain(new Aspect1(), new Aspect2());

            // --- Assert
            chain.ShouldHaveCountOf(2);
        }
Beispiel #4
0
        public void ConstructionWorksWithSingleAspect()
        {
            // --- Arrange
            var chain = new AspectChain(new Aspect1());

            // --- Assert
            chain.ShouldHaveCountOf(1);
        }
Beispiel #5
0
        public void GetHashCodeWorksAsExpected()
        {
            // --- Arrange
            var chain = new AspectChain(new DummyAspect(1), new DummyAspect(2));

            // --- Act
            var hashCode = chain.GetHashCode();

            // --- Assert
            hashCode.ShouldNotEqual(0);
        }
        public void ConstructionWorksWithMultipleAspect2()
        {
            // --- Arrange
            var chain = new AspectChain(
                new List<IMethodAspect>
                    {
                        new Aspect1(),
                        new Aspect2(),
                        new Aspect3()
                    });

            // --- Assert
            chain.ShouldHaveCountOf(3);
        }
Beispiel #7
0
        public void ConstructionWorksWithMultipleAspect2()
        {
            // --- Arrange
            var chain = new AspectChain(
                new List <IMethodAspect>
            {
                new Aspect1(),
                new Aspect2(),
                new Aspect3()
            });

            // --- Assert
            chain.ShouldHaveCountOf(3);
        }
        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();
        }
Beispiel #9
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();
        }
Beispiel #10
0
        public void GetHashCodeWorksAsExpected()
        {
            // --- Arrange
            var chain = new AspectChain(new DummyAspect(1), new DummyAspect(2));

            // --- Act
            var hashCode = chain.GetHashCode();

            // --- Assert
            hashCode.ShouldNotEqual(0);
        }