public void MsgEP_Compare() { Assert.AreEqual(0, MsgEP.Compare("logical://test/*", "logical://test/*")); Assert.AreEqual(0, MsgEP.Compare("logical://aa", "logical://AA")); Assert.AreEqual(-1, MsgEP.Compare("logical://aa", "logical://bb")); Assert.AreEqual(+1, MsgEP.Compare("logical://BB", "logical://aa")); }
public void MsgEP_Broadcast_Physical() { MsgEP ep; ep = new MsgEP("physical://seg0/seg1"); Assert.IsTrue(ep.IsPhysical); Assert.IsFalse(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1", ep.ToString()); ep = ep.Clone(); Assert.IsFalse(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1", ep.ToString()); ep = new MsgEP("physical://seg0/seg1?broadcast"); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1?broadcast", ep.ToString()); ep = ep.Clone(); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1?broadcast", ep.ToString()); ep = new MsgEP("physical://seg0/seg1?BROADCAST"); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1?broadcast", ep.ToString()); ep = ep.Clone(); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1?broadcast", ep.ToString()); ep = new MsgEP("physical://seg0/seg1"); ep.Broadcast = true; Assert.IsTrue(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1?broadcast", ep.ToString()); ep = new MsgEP("physical://seg0/seg1?broadcast"); ep.Broadcast = false; Assert.IsFalse(ep.Broadcast); Assert.AreEqual("physical://seg0/seg1", ep.ToString()); // Compare() does not ignore the broadcast parameter. Assert.IsTrue(MsgEP.Compare("physical://seg0/seg1", "physical://seg0/seg1") == 0); Assert.IsTrue(MsgEP.Compare("physical://seg0/seg1", "physical://seg0/seg1?broadcast") != 0); // Equals() ignores the broadcast parameter. Assert.AreEqual((MsgEP)"physical://seg0/seg1", (MsgEP)"physical://seg0/seg1"); Assert.AreEqual((MsgEP)"physical://seg0/seg1", (MsgEP)"physical://seg0/seg1?broadcast"); }
public void MsgEP_Broadcast_Logical() { MsgEP ep; ep = new MsgEP("logical://seg0/seg1"); Assert.IsTrue(ep.IsLogical); Assert.IsFalse(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1", ep.ToString()); ep = ep.Clone(); Assert.IsFalse(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1", ep.ToString()); ep = new MsgEP("logical://seg0/seg1?broadcast"); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1?broadcast", ep.ToString()); ep = ep.Clone(); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1?broadcast", ep.ToString()); ep = new MsgEP("logical://seg0/seg1?BROADCAST"); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1?broadcast", ep.ToString()); ep = ep.Clone(); Assert.IsTrue(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1?broadcast", ep.ToString()); try { ep = new MsgEP("logical://seg0/seg1?badparam=5"); Assert.Fail("Expected an ArgumentException"); } catch (Exception e) { Assert.IsInstanceOfType(e, typeof(ArgumentException)); } ep = new MsgEP("logical://seg0/seg1"); ep.Broadcast = true; Assert.IsTrue(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1?broadcast", ep.ToString()); ep = new MsgEP("logical://seg0/seg1?broadcast"); ep.Broadcast = false; Assert.IsFalse(ep.Broadcast); Assert.AreEqual("logical://seg0/seg1", ep.ToString()); // Compare() does not ignore the broadcast parameter. Assert.IsTrue(MsgEP.Compare("logical://seg0/seg1", "logical://seg0/seg1") == 0); Assert.IsTrue(MsgEP.Compare("logical://seg0/seg1", "logical://seg0/seg1?broadcast") != 0); // Equals() and LogicalMatch() ignore the broadcast parameter. Assert.AreEqual((MsgEP)"logical://seg0/seg1", (MsgEP)"logical://seg0/seg1"); Assert.AreEqual((MsgEP)"logical://seg0/seg1", (MsgEP)"logical://seg0/seg1?broadcast"); Assert.IsTrue(new MsgEP("logical://seg0/seg1").LogicalMatch("logical://seg0/seg1")); Assert.IsTrue(new MsgEP("logical://seg0/seg1").LogicalMatch("logical://seg0/seg1?broadcast")); Assert.IsTrue(new MsgEP("logical://seg0/seg1?broadcast").LogicalMatch("logical://seg0/seg1")); Assert.IsTrue(new MsgEP("logical://seg0/seg1?broadcast").LogicalMatch("logical://seg0/seg1?broadcast")); }