Apache.NMS.Test.AsyncConsumeTest.TestAsynchronousTextMessageConsume C# (CSharp) Method

TestAsynchronousTextMessageConsume() private method

private TestAsynchronousTextMessageConsume ( [ deliveryMode ) : void
deliveryMode [
return void
        public void TestAsynchronousTextMessageConsume(
			[Values(MsgDeliveryMode.Persistent, MsgDeliveryMode.NonPersistent)]
			MsgDeliveryMode deliveryMode)
        {
            using(IConnection connection = CreateConnection(GetTestClientId()))
            {
                connection.Start();
                using(ISession session = connection.CreateSession(AcknowledgementMode.AutoAcknowledge))
                {
                    IDestination destination = SessionUtil.GetDestination(session, DESTINATION_NAME);
                    using(IMessageConsumer consumer = session.CreateConsumer(destination))
                    {
                        consumer.Listener += new MessageListener(OnMessage);
                        using(IMessageProducer producer = session.CreateProducer(destination))
                        {
                            producer.DeliveryMode = deliveryMode;

                            ITextMessage request = session.CreateTextMessage("Hello, World!");
                            request.NMSCorrelationID = "AsyncConsumeTextMessage";
                            request.Properties["NMSXGroupID"] = "cheese";
                            request.Properties["myHeader"] = "James";

                            producer.Send(request);

                            WaitForMessageToArrive();
                            Assert.AreEqual(request.NMSCorrelationID, receivedMsg.NMSCorrelationID, "Invalid correlation ID.");
                            Assert.AreEqual(request.Properties["NMSXGroupID"], receivedMsg.Properties["NMSXGroupID"], "Invalid NMSXGroupID.");
                            Assert.AreEqual(request.Properties["myHeader"], receivedMsg.Properties["myHeader"], "Invalid myHeader.");
                            Assert.AreEqual(request.Text, ((ITextMessage) receivedMsg).Text, "Invalid text body.");
                        }
                    }
                }
            }
        }