Ejemplo n.º 1
0
 public void ShouldReceiveMessage()
 {
     string actual = null;
     using (var consumer = new XmsConsumer(destination, false))
     {
         var msg = (IBytesMessage) consumer.Receive(10);
         actual = msg.ReadUTF();
     }
     Assert.That(actual, Is.EqualTo(expected));
     Assert.That(XmsUtilities.GetCurrentQueueDebth(destination), Is.EqualTo(0), "Queue should be empty");
 }
Ejemplo n.º 2
0
 public void GIVEN_non_transactional_consumer_AND_existing_message_WHEN_receive_with_wait_THEN_message_should_be_dequeued()
 {
     string actual;
     using (var consumer = new XmsConsumer(address, false))
     {
         var msg = (IBytesMessage)consumer.Receive(10);
         actual = msg.ReadUTF();
     }
     Assert.That(actual, Is.EqualTo(expected));
     Assert.That(XmsUtilities.GetCurrentQueueDebth(address), Is.EqualTo(0), "Queue should be empty");
 }
Ejemplo n.º 3
0
        public void GIVEN_transactional_consumer_AND_existing_message_WHEN_receive_AND_scope_disposed_THEN_message_should_be_dequeued()
        {
            string actual;

            using (new TransactionScope(TransactionScopeOption.Required)) 
            using (var consumer = new XmsConsumer(address, true))
            {
                var msg = (IBytesMessage)consumer.ReceiveNoWait();
                actual = msg.ReadUTF();
                Assert.That(msg, Is.Not.Null);
            }

            Assert.That(actual, Is.EqualTo(expected));
            Assert.That(XmsUtilities.GetCurrentQueueDebth(address), Is.EqualTo(1), "Message should be returned back to the queue.");
        }