Example #1
0
        public void ReturnTrueAndProvideMessage_GivenSingleQueuedMessage()
        {
            var automatedMessagingSystem = new AutomatedMessagingSystem();
            var message = new AlwaysReadyMessage();

            automatedMessagingSystem.Publish(message);
            automatedMessagingSystem.CheckMessages();

            bool result = automatedMessagingSystem.DequeueMessage(out string myMessage);

            Assert.True(result);
            Assert.Equal(message.GetMessageInstance(), myMessage);
        }
        public void ReturnQueuedMessage()
        {
            var sut = new MessageDispatcher();

            var alwaysReadyMessage = new AlwaysReadyMessage();

            sut.Publish(alwaysReadyMessage);
            sut.CheckMessages(10);

            sut.TryDequeueMessage(out var actual);

            Assert.AreEqual(alwaysReadyMessage.Message, actual);
        }
Example #3
0
        public void ReturnOnlyOneMessage_GivenSingleQueuedMessage()
        {
            var automatedMessagingSystem = new AutomatedMessagingSystem();
            var message = new AlwaysReadyMessage();

            automatedMessagingSystem.Publish(message);
            automatedMessagingSystem.CheckMessages();

            automatedMessagingSystem.DequeueMessage(out string myMessage);
            bool result = automatedMessagingSystem.DequeueMessage(out string throwawayMessage);

            Assert.False(result);
            Assert.Equal(message.GetMessageInstance(), myMessage);
            Assert.Null(throwawayMessage);
        }