public void Msg_Clone_HubAdvertiseMsg() { HubAdvertiseMsg msgIn, msgOut; Msg.ClearTypes(); Msg.LoadTypes(Assembly.GetExecutingAssembly()); msgOut = new HubAdvertiseMsg(MsgEP.Parse("physical://root.com:80/hub/leaf"), "appname", "appdescription", new MsgRouterInfo(new Version(1000, 0)), Helper.NewGuid()); msgOut._FromEP = MsgEP.Parse("physical://root.com:80/hub/leaf?c=tcp://1.2.3.4:57"); Assert.AreEqual(Guid.Empty, msgOut._MsgID); msgIn = (HubAdvertiseMsg)msgOut.Clone(); Assert.AreEqual("physical://root.com:80/hub/leaf", msgIn.HubEP.ToString()); Assert.AreEqual("appname", msgIn.AppName); Assert.AreEqual("appdescription", msgIn.AppDescription); Assert.AreEqual(new Version(1000, 0), msgIn.RouterInfo.ProtocolVersion); Assert.AreEqual(IPAddress.Parse("1.2.3.4"), msgIn.IPAddress); Assert.AreEqual(57, msgIn.TcpPort); Assert.AreEqual(msgOut.LogicalEndpointSetID, msgIn.LogicalEndpointSetID); Assert.AreEqual(Guid.Empty, msgIn._MsgID); msgOut._MsgID = Helper.NewGuid(); msgIn = (HubAdvertiseMsg)msgOut.Clone(); Assert.AreNotEqual(Guid.Empty, msgIn._MsgID); TestBaseCloning(msgOut); }
public void Msg_Serialize_HubAdvertiseMsg() { HubAdvertiseMsg msgIn, msgOut; EnhancedStream es = new EnhancedMemoryStream(); Msg.ClearTypes(); Msg.LoadTypes(Assembly.GetExecutingAssembly()); msgOut = new HubAdvertiseMsg(MsgEP.Parse("physical://root.com:80/hub/leaf"), "appname", "appdescription", MsgRouterInfo.Default, Helper.NewGuid()); msgOut._FromEP = MsgEP.Parse("physical://root.com:80/hub/leaf?c=tcp://1.2.3.4:57"); Msg.Save(es, msgOut); es.Seek(0, SeekOrigin.Begin); msgIn = (HubAdvertiseMsg)Msg.Load(es); Assert.AreEqual("physical://root.com:80/hub/leaf", msgIn.HubEP.ToString()); Assert.AreEqual("appname", msgIn.AppName); Assert.AreEqual("appdescription", msgIn.AppDescription); Assert.AreEqual(IPAddress.Parse("1.2.3.4"), msgIn.IPAddress); Assert.AreEqual(57, msgIn.TcpPort); Assert.AreEqual(msgOut.LogicalEndpointSetID, msgIn.LogicalEndpointSetID); }