public void TcpChannel_Reply() { TcpTestMsg msg; StartRouters(false); g1r1.IdleCheck = false; g1r2.IdleCheck = false; try { g1r1.Transmit(new ChannelEP(Transport.Tcp, g1r2.TcpEP), new TcpTestMsg("Hello World!")); g1r2.WaitReceived(1); msg = (TcpTestMsg)g1r2.DequeueReceived(); Assert.AreEqual("Hello World!", msg.Value); Assert.AreEqual(g1r1.TcpEP.Port, msg._FromEP.ChannelEP.NetEP.Port); g1r2.Transmit(msg._FromEP.ChannelEP, new TcpTestMsg("Hello Yourself!")); g1r1.WaitReceived(1); msg = (TcpTestMsg)g1r1.DequeueReceived(); Assert.AreEqual("Hello Yourself!", msg.Value); Assert.AreEqual(g1r2.TcpEP.Port, msg._FromEP.ChannelEP.NetEP.Port); Assert.AreEqual(NetHelper.GetActiveAdapter(), msg._FromEP.ChannelEP.NetEP.Address); } finally { StopRouters(); } }
public void UdpChannel_ransmitSelf() { UdpTestMsg msg; StartRouters(false); try { g1r1.Transmit(new ChannelEP(Transport.Udp, g1r1.UdpEP), new UdpTestMsg("Hello World!")); g1r1.WaitReceived(1); msg = (UdpTestMsg)g1r1.DequeueReceived(); Assert.AreEqual(msg.Value, "Hello World!"); Assert.AreEqual(Transport.Udp, msg._FromEP.ChannelEP.Transport); Assert.AreEqual(NetHelper.GetActiveAdapter(), msg._FromEP.ChannelEP.NetEP.Address); Assert.AreEqual(g1r1.UdpEP.Port, msg._FromEP.ChannelEP.NetEP.Port); Thread.Sleep(50); Assert.AreEqual(0, g1r2.ReceiveCount); Assert.AreEqual(0, g1r3.ReceiveCount); Assert.AreEqual(0, g2r1.ReceiveCount); Assert.AreEqual(0, g2r2.ReceiveCount); } finally { StopRouters(); } }