protected override object CreateProxy(AdvisedSupport advisedSupport) { Assert.IsFalse(advisedSupport.ProxyTargetType, "Not forcible decorator-based proxy"); object proxy = CreateAopProxy(advisedSupport).GetProxy(); Assert.IsTrue(AopUtils.IsCompositionAopProxy(proxy), "Should be a composition-based proxy: " + proxy.GetType()); return(proxy); }
public void TargetImplementsAnInterface() { ProxyFactory advisedSupport = new ProxyFactory(new TestObject()); IAopProxy aopProxy = CreateAopProxy(advisedSupport); Assert.IsNotNull(aopProxy); Assert.IsTrue(AopUtils.IsCompositionAopProxy(aopProxy)); }
private void ProxyAssertions(ITestObject testObject, int nopInterceptorCount) { NopInterceptor nop = (NopInterceptor)ctx.GetObject("nopInterceptor"); Assert.AreEqual(0, nop.Count); Assert.IsTrue(AopUtils.IsCompositionAopProxy(testObject), testObject + " is not an AOP Proxy"); int age = 5; testObject.Age = age; Assert.AreEqual(age, testObject.Age); Assert.AreEqual(2 * nopInterceptorCount, nop.Count); }
public void IsCompositionProxy() { var pf = new ProxyFactory(typeof(ITestObject), new DebugAdvice()); pf.Target = _target; Assert.False(pf.ProxyTargetType); var proxy = (ITestObject)pf.GetProxy(); Assert.True(AopUtils.IsCompositionAopProxy(proxy)); Assert.True(AopUtils.IsAopProxy(proxy)); Assert.IsNotInstanceOf <TestObject>(proxy); }
public void Introduction() { object obj = ctx.GetObject("introductionUsingDecorator"); Assert.IsNotNull(obj as IIsModified); ITestObject testObject = (ITestObject)obj; NopInterceptor nop = (NopInterceptor)ctx.GetObject("introductionNopInterceptor"); Assert.AreEqual(0, nop.Count); Assert.IsTrue(AopUtils.IsCompositionAopProxy(testObject), testObject + " is not an Composition AOP Proxy"); int age = 5; testObject.Age = age; Assert.AreEqual(age, testObject.Age); Assert.IsNotNull(testObject as IIsModified); Assert.IsTrue(((IIsModified)testObject).IsModified); Assert.AreEqual(3, nop.Count); Assert.AreEqual("introductionUsingDecorator", testObject.Name); }