示例#1
0
        public void PhysicalQuery_LongQuery_Self()
        {
            _HubRouter hub = null;
            TestAck    ack;
            string     s;

            Msg.LoadTypes(Assembly.GetExecutingAssembly());

            try
            {
                hub = CreateHub("detached", "hub0", group);
                Thread.Sleep(InitDelay);

                // Verify a long running q/r between a single router,
                // verifying that query was not sent multiple times.

                s   = "Hello World!";
                ack = (TestAck)hub.Query(hub.RouterEP, new NotCachedMsg("Sleep", s));
                Assert.AreEqual(s, ack.Value);
                Assert.IsTrue(hub.ReceiveCount == 1);
            }
            finally
            {
                if (hub != null)
                {
                    hub.Stop();
                }

                Config.SetConfig(null);
            }
        }
示例#2
0
        public void LogicalQueryViaUdpBroadcast_LongQuery_Self()
        {
            _HubRouter hub = null;
            TestAck    ack;
            string     s;

            Msg.LoadTypes(Assembly.GetExecutingAssembly());

            try
            {
                hub = CreateHub("detached", "hub0", group);
                Thread.Sleep(InitDelay);

                // Verify a q/r between two routers

                s   = "Hello World!";
                ack = (TestAck)hub.Query("logical://hub", new NotCachedMsg("Sleep", s));
                Assert.AreEqual(s, ack.Value);
                Assert.IsTrue(hub.ReceiveCount > 0);
            }
            finally
            {
                if (hub != null)
                {
                    hub.Stop();
                }

                Config.SetConfig(null);
            }
        }
示例#3
0
        public void PhysicalQuery_Basic_Remote_Blast()
        {
            _LeafRouter leaf = null;
            _HubRouter  hub  = null;
            TestAck     ack;
            string      s;

            Msg.LoadTypes(Assembly.GetExecutingAssembly());

            try
            {
                hub  = CreateHub("detached", "hub0", group);
                leaf = CreateLeaf("detached", "hub0", "leaf0", group);
                Thread.Sleep(InitDelay);

                for (int i = 0; i < BlastCount; i++)
                {
                    // Verify a q/r between two routers

                    s   = "Hello World: " + i.ToString();
                    ack = (TestAck)hub.Query(leaf.RouterEP, new NotCachedMsg("Normal", s));
                    Assert.AreEqual(s, ack.Value);
                }
            }
            finally
            {
                if (leaf != null)
                {
                    leaf.Stop();
                }

                if (hub != null)
                {
                    hub.Stop();
                }

                Config.SetConfig(null);
            }
        }
示例#4
0
        public void PhysicalQueryViaUdpBroadcast_LongQuery_Remote()
        {
            _LeafRouter leaf = null;
            _HubRouter  hub  = null;
            TestAck     ack;
            string      s;

            Msg.LoadTypes(Assembly.GetExecutingAssembly());

            try
            {
                hub  = CreateHub("detached", "hub0", group);
                leaf = CreateLeaf("detached", "hub0", "leaf0", group);
                Thread.Sleep(InitDelay);

                // Verify a long running q/r between two routers,
                // verifying that the query was not sent multiple times.

                s   = "Hello World!";
                ack = (TestAck)hub.Query(leaf.RouterEP, new NotCachedMsg("Sleep", s));
                Assert.AreEqual(s, ack.Value);
                Assert.IsTrue(leaf.ReceiveCount == 1);
            }
            finally
            {
                if (leaf != null)
                {
                    leaf.Stop();
                }

                if (hub != null)
                {
                    hub.Stop();
                }

                Config.SetConfig(null);
            }
        }
示例#5
0
        public void LogicalQueryViaUdpBroadcast_Basic_Remote()
        {
            _LeafRouter leaf = null;
            _HubRouter  hub  = null;
            TestAck     ack;
            string      s;

            Msg.LoadTypes(Assembly.GetExecutingAssembly());

            try
            {
                hub  = CreateHub("detached", "hub0", group);
                leaf = CreateLeaf("detached", "hub0", "leaf0", group);
                Thread.Sleep(InitDelay);

                // Verify a q/r between two routers

                s   = "Hello World!";
                ack = (TestAck)hub.Query("logical://leaf", new NotCachedMsg("Normal", s));
                Assert.AreEqual(s, ack.Value);
            }
            finally
            {
                if (leaf != null)
                {
                    leaf.Stop();
                }

                if (hub != null)
                {
                    hub.Stop();
                }

                Config.SetConfig(null);
            }
        }