Esempio n. 1
0
        public void DontCreateProxyWhenNoAdvicesAvailable()
        {
            //Arrange
            var instance = new TestClass();
            var config = new TestBaseConfiguration();

            //Act
            var proxied = ProxyFactory.Create(instance, config);

            //Assert
            Assert.AreEqual(instance, proxied);
        }
Esempio n. 2
0
        public void DontCreateProxyWhenNoAdvicesAvailable()
        {
            //Arrange
            var instance = new TestClass();
            var config   = new TestBaseConfiguration();

            //Act
            var proxied = ProxyFactory.Create(instance, config);

            //Assert
            Assert.AreEqual(instance, proxied);
        }
Esempio n. 3
0
        public void DontCreateProxyWhenNoAdvicesCanBeApplied()
        {
            //Arrange
            var instance = new TestClass();
            var config = new TestBaseConfiguration();
            var advice = new TestAdvice();
            config.Add(advice, new NeverApplyAdvice());

            //Act
            var proxied = ProxyFactory.Create(instance, config);

            //Assert
            Assert.AreEqual(instance, proxied);
        }
Esempio n. 4
0
        public void AdviceShouldBeCalledWhenPointcutSaysSo()
        {
            //Arrange
            var config = new TestBaseConfiguration();
            var mockedAdvice = new Mock<IAdvice>();
            config.Add(mockedAdvice.Object, new AlwaysApplyAdvice());
            var proxied = ProxyFactory.Create<ITestInterface>(new TestClass(), config);

            //Act
            proxied.Foo();

            //Assert
            mockedAdvice.Verify(x => x.ApplyAdvice(It.IsAny<IInvocation>()), Times.Once());
        }
Esempio n. 5
0
        public void AdviceShouldBeCalledWhenPointcutSaysSo()
        {
            //Arrange
            var config       = new TestBaseConfiguration();
            var mockedAdvice = new Mock <IAdvice>();

            config.Add(mockedAdvice.Object, new AlwaysApplyAdvice());
            var proxied = ProxyFactory.Create <ITestInterface>(new TestClass(), config);

            //Act
            proxied.Foo();

            //Assert
            mockedAdvice.Verify(x => x.ApplyAdvice(It.IsAny <IInvocation>()), Times.Once());
        }
Esempio n. 6
0
        public void DontCreateProxyWhenNoAdvicesCanBeApplied()
        {
            //Arrange
            var instance = new TestClass();
            var config   = new TestBaseConfiguration();
            var advice   = new TestAdvice();

            config.Add(advice, new NeverApplyAdvice());

            //Act
            var proxied = ProxyFactory.Create(instance, config);

            //Assert
            Assert.AreEqual(instance, proxied);
        }