예제 #1
0
        public void SendMessageWithCorrectTopicAddsToQueue()
        {
            var context = new TestBusContext();

            var sender = context.CreateMessageSender();

            context.DeclareQueue("receiver1", new List <string> {
                "receiver.info"
            });
            context.DeclareQueue("receiver2", new List <string> {
                "receiver.*.info"
            });

            var message = new EventMessage("receiver.info", "receiver");

            sender.SendMessage(message);

            Assert.AreEqual(1, context.TestQueues["receiver1"].Queue.Count);
            Assert.AreEqual(0, context.TestQueues["receiver2"].Queue.Count);
        }
예제 #2
0
        public void DeclareQueue_AddsQueue()
        {
            // Arrange
            TestBusContext context = new TestBusContext();

            // Act
            context.DeclareQueue("TestQueue", new List <string> {
                "test.routing.key"
            });

            // Assert
            Assert.AreEqual(1, context.TestQueues.Count);
            Assert.IsNotNull(context.TestQueues["TestQueue"]);
        }
예제 #3
0
        public void MultipleMessagesAddToQueue()
        {
            var context = new TestBusContext();

            var sender = context.CreateMessageSender();

            context.DeclareQueue("receiver1", new List <string> {
                "receiver.info"
            });
            var message = new EventMessage("receiver.info", "receiver");

            sender.SendMessage(message);
            sender.SendMessage(message);
            sender.SendMessage(message);

            Assert.AreEqual(3, context.TestQueues["receiver1"].Queue.Count);
        }
예제 #4
0
        public async Task RegistreerKlantCommandAddsKlantToDatabaseAndThrowsEvent()
        {
            _context.DeclareQueue("klantGeregistreedQueue", new List <string> {
                NameConstants.KlantGeregistreerdEvent
            });
            var command = new RegistreerKlantCommand
            {
                AccountId      = "1",
                Voornaam       = "Hans",
                Achternaam     = "van Huizen",
                AdresRegel     = "Voorstraat 8",
                Plaats         = "Groningen",
                Postcode       = "1345df",
                Telefoonnummer = "0665234365"
            };

            var publisher = new CommandPublisher(_context);
            var result    = await publisher.Publish <int>(command, NameConstants.RegistreerKlantCommandQueue);

            Thread.Sleep(1000);

            Assert.AreEqual(1, result);
            Assert.AreEqual(1, _context.TestQueues["klantGeregistreedQueue"].Queue.Count);
        }