Exemplo n.º 1
0
        public void RegexIsProperlyParsed(string topic, string result)
        {
            // Act
            var key = new TestBusKey("testQueue", topic);

            // Assert
            Assert.AreEqual(result, key.TopicPattern.ToString());
        }
Exemplo n.º 2
0
        public void EqualsWithNullReturnsFalse()
        {
            // Arrange
            var keyA = new TestBusKey("testQueue", "testTopic");

            // Act
            bool result = keyA.Equals(null);

            // Assert
            Assert.IsFalse(result);
        }
Exemplo n.º 3
0
        public void TwoKeysWithTheSameValuesAreEqual(string queueA, string topicA, string queueB, string topicB, bool expected)
        {
            // Arrange
            var keyA = new TestBusKey(queueA, topicA);
            var keyB = new TestBusKey(queueB, topicB);

            // Act
            bool result = keyA.Equals(keyB);

            // Assert
            Assert.AreEqual(result, expected);
        }
Exemplo n.º 4
0
        public void TwoKeysWithTheSameValuesHaveEqualHashkeys(string queueA, string topicA, string queueB, string topicB, bool expected)
        {
            // Arrange
            var keyA = new TestBusKey(queueA, topicA);
            var keyB = new TestBusKey(queueB, topicB);

            // Act
            bool result = keyA.GetHashCode() == keyB.GetHashCode();

            // Assert
            Assert.AreEqual(result, expected);
        }
        public void SendMessageDoesNothingWithoutAvailableQueue(string topic)
        {
            Mock <TestBusContext> context = new Mock <TestBusContext>(MockBehavior.Strict);
            var dictionary = new Dictionary <TestBusKey, TestBusQueueWrapper <EventMessage> >();

            context.SetupGet(e => e.DataQueues)
            .Returns(dictionary);

            var sender = new TestMessageSender(context.Object);

            var message = new EventMessage {
                Topic = "UnknownTopic"
            };

            // Act
            sender.SendMessage(message);

            // Assert
            var key = new TestBusKey("testQueue", topic);

            Assert.IsFalse(dictionary.ContainsKey(key));
        }
        public void TopicsAreSelectedByRegex(string regexTopic, string topic)
        {
            Mock <TestBusContext> context = new Mock <TestBusContext>(MockBehavior.Strict);
            var dictionary = new Dictionary <TestBusKey, TestBusQueueWrapper <EventMessage> >();
            var key        = new TestBusKey("testQueue", topic);

            dictionary[key] = new TestBusQueueWrapper <EventMessage>();

            context.SetupGet(e => e.DataQueues)
            .Returns(dictionary);

            var sender  = new TestMessageSender(context.Object);
            var message = new EventMessage {
                Topic = topic
            };

            // Act
            sender.SendMessage(message);

            // Assert
            Assert.IsTrue(dictionary.ContainsKey(key));
        }
Exemplo n.º 7
0
        public void StartReceivingCreatesQueueWrapperInDictionary(string queue, string topics)
        {
            // Arrange
            Mock <TestBusContext> context = new Mock <TestBusContext>(MockBehavior.Strict);
            var dictionary = new Dictionary <TestBusKey, TestBusQueueWrapper <EventMessage> >();

            context.SetupGet(e => e.DataQueues)
            .Returns(dictionary);

            string[] topicNames = topics.Split(',');

            var receiver = new TestMessageReceiver(context.Object, queue, topicNames);

            // Act
            receiver.StartReceivingMessages();

            // Assert
            foreach (var topic in topicNames)
            {
                var key = new TestBusKey(queue, topic);
                Assert.IsTrue(dictionary.ContainsKey(key));
            }
        }
        public void SendMessageAddsMessageToQueueIfQueueExists(string topic)
        {
            Mock <TestBusContext> context = new Mock <TestBusContext>(MockBehavior.Strict);
            var dictionary = new Dictionary <TestBusKey, TestBusQueueWrapper <EventMessage> >();
            var key        = new TestBusKey("testQueue", topic);

            dictionary[key] = new TestBusQueueWrapper <EventMessage>();

            context.SetupGet(e => e.DataQueues)
            .Returns(dictionary);

            var sender = new TestMessageSender(context.Object);

            var message = new EventMessage {
                Topic = topic
            };

            // Act
            sender.SendMessage(message);

            // Assert
            Assert.IsTrue(dictionary.ContainsKey(key));
            Assert.AreEqual(1, dictionary[key].Queue.Count);
        }