Beispiel #1
0
        public void MessageBusTest()
        {
            var target = EasyMqttFactory.CreateBus(CONNECTIONSTRING);

            Assert.IsNotNull(target);
            Assert.IsTrue(target.IsConnected, "Connection to MQTT broker fails.");
        }
Beispiel #2
0
        public void PublishTest()
        {
            var target = EasyMqttFactory.CreateBus(CONNECTIONSTRING);

            Assert.IsTrue(target.IsConnected, "Connection to MQTT broker fails.");

            var message = new MyMessage()
            {
                Text = "Hello Message!"
            };
            var actual = target.Publish(message);

            Assert.IsTrue(actual, "Publishing message fails.");
        }
Beispiel #3
0
        public void SubscribeTest()
        {
            var receivedEvents = new List <string>();

            var target = EasyMqttFactory.CreateBus(CONNECTIONSTRING);

            Assert.IsTrue(target.IsConnected, "Connection to MQTT broker fails.");

            var statsUpdatedEvent = new ManualResetEvent(false);

            target.Subscribe <MyMessage>(msg =>
            {
                receivedEvents.Add(msg.Text);
                statsUpdatedEvent.Set();
                Console.WriteLine("Received Message: " + msg.Text);
            });
            target.Subscribe <MyNextMessage>(msg =>
            {
                receivedEvents.Add(msg.Text);
                statsUpdatedEvent.Set();
                Console.WriteLine("Received Message: " + msg.Text);
            });

            var message = new MyMessage()
            {
                Text = "Hello first Message!"
            };
            var message2 = new MyNextMessage()
            {
                Text = "Hello second Message!"
            };

            target.Publish(message);
            statsUpdatedEvent.WaitOne(5000, false);
            statsUpdatedEvent.Reset();

            target.Publish(message2);
            statsUpdatedEvent.WaitOne(5000, false);

            Assert.AreEqual(2, receivedEvents.Count);
            Assert.AreEqual("Hello first Message!", receivedEvents[0]);
            Assert.AreEqual("Hello second Message!", receivedEvents[1]);
        }