public void TestAcceptChannel() { IChannel cacheServiceChannel = connection.OpenChannel(CacheServiceProtocol.Instance, "CacheServiceProxy", null, null); EnsureCacheRequest ensureCacheRequest = (EnsureCacheRequest)cacheServiceChannel.MessageFactory.CreateMessage( EnsureCacheRequest.TYPE_ID); ensureCacheRequest.CacheName = CacheName; string response = (string)cacheServiceChannel.Request(ensureCacheRequest); Uri uri = new Uri(response); Assert.IsNotNull(uri); int id; id = Int32.Parse(UriUtils.GetSchemeSpecificPart(uri)); Assert.IsTrue(id > 0); Assert.IsTrue(connection.GetChannel(id) == null); AcceptChannel acceptChannel = (AcceptChannel)connection.GetChannel(0).MessageFactory.CreateMessage( AcceptChannel.TYPE_ID); Assert.IsInstanceOf(typeof(AcceptChannel), acceptChannel); Assert.AreEqual(AcceptChannel.TYPE_ID, acceptChannel.TypeId); acceptChannel.ChannelUri = uri; acceptChannel.Connection = (Connection)connection; IResponse acceptChannelResponse = connection.GetChannel(0).Send(acceptChannel).WaitForResponse(-1); Assert.IsInstanceOf(typeof(InternalResponse), acceptChannelResponse); Request.RequestStatus status = (Request.RequestStatus)acceptChannelResponse.Result; Assert.IsNotNull(status); Assert.IsNull(status.Exception); Assert.IsInstanceOf(typeof(AcceptChannelRequest), status.Request); }
public void TestOpenChannel() { IChannel channel0 = connection.GetChannel(0); IMessage message = channel0.MessageFactory.CreateMessage(OpenChannelRequest.TYPE_ID); Assert.IsInstanceOf(typeof(OpenChannelRequest), message); Assert.AreEqual(OpenChannelRequest.TYPE_ID, message.TypeId); message = channel0.MessageFactory.CreateMessage(OpenChannelResponse.TYPE_ID); Assert.IsInstanceOf(typeof(OpenChannelResponse), message); Assert.AreEqual(OpenChannelResponse.TYPE_ID, message.TypeId); OpenChannel openChannel = (OpenChannel)channel0.MessageFactory.CreateMessage(OpenChannel.TYPE_ID); Assert.IsInstanceOf(typeof(OpenChannel), openChannel); Assert.AreEqual(OpenChannel.TYPE_ID, openChannel.TypeId); openChannel.Connection = (Connection)connection; openChannel.Protocol = CacheServiceProtocol.Instance; openChannel.ReceiverName = "CacheServiceProxy"; IResponse openChannelResponse = connection.GetChannel(0).Send(openChannel).WaitForResponse(-1); Assert.IsInstanceOf(typeof(InternalResponse), openChannelResponse); Assert.IsFalse(openChannelResponse.IsFailure); Assert.IsNotNull(openChannelResponse.Result); Assert.AreEqual(openChannelResponse.RequestId, openChannel.Id); Assert.IsInstanceOf(typeof(Request.RequestStatus), openChannelResponse.Result); Request.RequestStatus status = (Request.RequestStatus)openChannelResponse.Result; Assert.IsNotNull(status); Assert.IsNull(status.Exception); Assert.IsInstanceOf(typeof(OpenChannelRequest), status.Request); }