public void CanDoInterfaceInterception() { var instance = new MyType(); var interceptor = new InterfaceInterceptor(); var handler = new ModifyResultHandler(); var proxy = this.InstanceInterception(interceptor, instance, handler) as IMyType; var result = proxy.MyMethod(); Assert.Equal(20, result); }
public void CanDoDynamicInterception() { var instance = new MyType(); var interceptor = new DynamicInterceptor(); var handler = new ModifyResultHandler(); //dynamic proxy = this.InstanceInterception(interceptor, instance, handler); dynamic proxy = instance.InterceptDynamic(handler); var result = proxy.MyMethod(); Assert.Equal(20, result); }