Ejemplo n.º 1
0
        public async Task ListnerTest_2_listeners()
        {
            //ARRANGE
            var logger = new LogProviderMock();
            Func <ITransportConfiguration> configuration = () => new TransportConfiguration();
            var transport = new InMemoryQueueTransport(logger, configuration);
            var manager   = new TransportManager(transport, logger);
            var message   = new byte[] { 0, 1, 2 };

            byte[] messageReceived1 = null;
            byte[] messageReceived2 = null;

            var listener1 = new MessageListener1(m => messageReceived1 = m);
            var listener2 = new MessageListener2(m => messageReceived2 = m);
            //ACT
            await listener1.AttachTo(manager);

            await listener2.AttachTo(manager);

            await transport.Start();

            await manager.EnqueueMessage(message);

            Thread.Sleep(500);
            //ASSERT

            Assert.AreEqual(message, messageReceived1);
            Assert.AreEqual(message, messageReceived2);
        }
Ejemplo n.º 2
0
        public async Task EnqueueMessageTest()
        {
            //ARRANGE
            var logger = new LogProviderMock();
            Func <ITransportConfiguration> configuration = () => new TransportConfiguration();
            var transport = new InMemoryQueueTransport(logger, configuration);
            var manager   = new TransportManager(transport, logger);
            var message   = new byte[] { 0, 1, 2 };

            byte[] dequeuedMessage;
            //ACT
            await transport.Start();

            await manager.EnqueueMessage(message);

            var result = transport.TryDequeue(out dequeuedMessage);

            //ASSERT
            Assert.IsTrue(result);
            Assert.AreEqual(message, dequeuedMessage);
        }