public void CastleTestConstructorClass() { var proxyGenerator = new ProxyGenerator(); var originalObj = new CrazyConstructorSpecialDisposable("test", "test2"); var newObj = (CrazyConstructorSpecialDisposable)proxyGenerator.CreateClassProxyWithTarget(originalObj.GetType(), originalObj, new object[] { "a", "b" }, Enumerable.Empty <IInterceptor>().ToArray()); Assert.IsAssignableFrom <IDisposable>(newObj); Assert.IsAssignableFrom <ISpecialDisposable>(newObj); Assert.IsAssignableFrom <CrazyConstructorSpecialDisposable>(newObj); Assert.Equal("a", newObj.A); Assert.Equal("b", newObj.B); }
public void CastleTestConstructorClass() { var proxyGenerator = new ProxyGenerator(); var originalObj = new CrazyConstructorSpecialDisposable("test", "test2"); var newObj = (CrazyConstructorSpecialDisposable)proxyGenerator.CreateClassProxyWithTarget(originalObj.GetType(), originalObj, new object[] { "a", "b" }, Enumerable.Empty<IInterceptor>().ToArray()); Assert.IsAssignableFrom<IDisposable>(newObj); Assert.IsAssignableFrom<ISpecialDisposable>(newObj); Assert.IsAssignableFrom<CrazyConstructorSpecialDisposable>(newObj); Assert.Equal("a", newObj.A); Assert.Equal("b", newObj.B); }