Exemple #1
0
 private void GenSubscribers(SubscriberRMQ <TestEvent>[] subscribers)
 {
     for (int i = 0; i < subscribers.Length; i++)
     {
         subscribers[i]                = new SubscriberRMQ <TestEvent>();
         subscribers[i].HostName       = "localhost";
         subscribers[i].Port           = 5672;
         subscribers[i].VirtualHost    = "/";
         subscribers[i].Protocol       = "AMQP_0_8";
         subscribers[i].EventHandled  += subscriber_EventHandled2;
         subscribers[i].EventReceived += subscriber_EventReceived2;
         subscribers[i].Subscribe();
     }
 }
Exemple #2
0
        public void SubscribeAndUnsubscribeTest()
        {
            SubscriberRMQ <TestEvent> subscriber = new SubscriberRMQ <TestEvent>();

            subscriber.HostName       = "localhost";
            subscriber.Port           = 5672;
            subscriber.VirtualHost    = "/";
            subscriber.Protocol       = "AMQP_0_8";
            subscriber.EventHandled  += subscriber_EventHandled;
            subscriber.EventReceived += subscriber_EventReceived;
            subscriber.Subscribe();

            subscriber.Unsubscribe();
        }
Exemple #3
0
        public void TestPublisherReceiverRMQTest()
        {
            SubscriberRMQ <TestEvent> subscriber = new SubscriberRMQ <TestEvent>();

            subscriber.HostName       = "localhost";
            subscriber.Port           = 5672;
            subscriber.VirtualHost    = "/";
            subscriber.Protocol       = "AMQP_0_8";
            subscriber.EventHandled  += subscriber_EventHandled;
            subscriber.EventReceived += subscriber_EventReceived;
            subscriber.Subscribe();

            System.Threading.Tasks.Task.Factory.StartNew(() =>
            {
                PublisherRMQ <TestEvent> publisher = new PublisherRMQ <TestEvent>();
                publisher.HostName    = "localhost";
                publisher.Port        = 5672;
                publisher.VirtualHost = "/";
                publisher.Protocol    = "AMQP_0_8";
                publisher.Publish(new TestEvent()
                {
                    Data = DateTime.Now.ToString(), Processed = false
                });
            });

            if (!mre.WaitOne(TimeSpan.FromSeconds(13)))
            {
                Assert.Fail();
            }
            else
            {
                Assert.IsTrue(Received);
            }

            mre.Reset();

            if (!mre.WaitOne(TimeSpan.FromSeconds(10)))
            {
                Assert.Fail();
            }
            else
            {
                Assert.IsTrue(Handled);
            }

            subscriber.Unsubscribe();
        }
        public void RMQCountTest()
        {
            subscribers = new SubscriberRMQ<TestEvent>[10];

            GenSubscribers(subscribers);

            System.Threading.Tasks.Task.Factory.StartNew(() =>
            {
                PublisherRMQ<TestEvent> publisher = new PublisherRMQ<TestEvent>();
                publisher.HostName = "localhost";
                publisher.Port = 5672;
                publisher.VirtualHost = "/";
                publisher.Protocol = "AMQP_0_8";
                publisher.Publish(new TestEvent() { Data = DateTime.Now.ToString(), Processed = false });
            });

            if (countEvent.Wait(TimeSpan.FromSeconds(6)) == false)
                Assert.Fail();

            Unsubscribe(subscribers);
            subscribers = null;
        }
        public void SubscribeAndUnsubscribeTest()
        {
            SubscriberRMQ<TestEvent> subscriber = new SubscriberRMQ<TestEvent>();
            subscriber.HostName = "localhost";
            subscriber.Port = 5672;
            subscriber.VirtualHost = "/";
            subscriber.Protocol = "AMQP_0_8";
            subscriber.EventHandled += subscriber_EventHandled;
            subscriber.EventReceived += subscriber_EventReceived;
            subscriber.Subscribe();

            subscriber.Unsubscribe();
        }
 private void Unsubscribe(SubscriberRMQ<TestEvent>[] subscribers)
 {
     for (int i = 0; i < subscribers.Length; i++)
     {
         if (subscribers[i] != null)
             subscribers[i].Unsubscribe();
     }
 }
 private void GenSubscribers(SubscriberRMQ<TestEvent>[] subscribers)
 {
     for (int i = 0; i < subscribers.Length; i++)
     {
         subscribers[i] = new SubscriberRMQ<TestEvent>();
         subscribers[i].HostName = "localhost";
         subscribers[i].Port = 5672;
         subscribers[i].VirtualHost = "/";
         subscribers[i].Protocol = "AMQP_0_8";
         subscribers[i].EventHandled += subscriber_EventHandled2;
         subscribers[i].EventReceived += subscriber_EventReceived2;
         subscribers[i].Subscribe();
     }
 }
        public void TestPublisherReceiverRMQTest()
        {
            SubscriberRMQ<TestEvent> subscriber = new SubscriberRMQ<TestEvent>();
            subscriber.HostName = "localhost";
            subscriber.Port = 5672;
            subscriber.VirtualHost = "/";
            subscriber.Protocol = "AMQP_0_8";
            subscriber.EventHandled += subscriber_EventHandled;
            subscriber.EventReceived += subscriber_EventReceived;
            subscriber.Subscribe();

            System.Threading.Tasks.Task.Factory.StartNew(() =>
            {
                PublisherRMQ<TestEvent> publisher = new PublisherRMQ<TestEvent>();
                publisher.HostName = "localhost";
                publisher.Port = 5672;
                publisher.VirtualHost = "/";
                publisher.Protocol = "AMQP_0_8";
                publisher.Publish(new TestEvent() { Data = DateTime.Now.ToString(), Processed = false });
            });

            if (!mre.WaitOne(TimeSpan.FromSeconds(13)))
            {
                Assert.Fail();
            }
            else
                Assert.IsTrue(Received);

            mre.Reset();

            if (!mre.WaitOne(TimeSpan.FromSeconds(10)))
            {
                Assert.Fail();
            }
            else
                Assert.IsTrue(Handled);

            subscriber.Unsubscribe();
        }