public void Should_cache_channelFactory_proxy_types() { var builder = new AsynChannelFactoryBuilder<DefaultClientModel>(new ProxyGenerator()); var factory1 = builder.CreateChannelFactory<ChannelFactory<IOperations>>(new DefaultClientModel()); var factory2 = builder.CreateChannelFactory<ChannelFactory<IOperations>>(new DefaultClientModel()); Assert.AreSame(factory1.GetType(), factory2.GetType()); }
public void Should_cache_channelFactory_proxy_types() { var builder = new AsynChannelFactoryBuilder <DefaultClientModel>(new ProxyGenerator()); var factory1 = builder.CreateChannelFactory <ChannelFactory <IOperations> >(new DefaultClientModel()); var factory2 = builder.CreateChannelFactory <ChannelFactory <IOperations> >(new DefaultClientModel()); Assert.AreSame(factory1.GetType(), factory2.GetType()); }
public void CanProxyChannelFactoriesForAsyncSupport() { var model = new DefaultClientModel() { Endpoint = WcfEndpoint .BoundTo(new NetTcpBinding { PortSharingEnabled = true }) .At("net.tcp://localhost/Operations") }; var asyncBuilder = new AsynChannelFactoryBuilder<DefaultClientModel>(new ProxyGenerator()); var channelFactory = asyncBuilder.CreateChannelFactory<ChannelFactory<IOperations>>( model, new NetTcpBinding(), "net.tcp://localhost/Operations"); var client = channelFactory.CreateChannel(); Assert.AreEqual(42, client.GetValueFromConstructor()); ((ICommunicationObject)client).Close(); }