Author: tabish
Date: Fri Jan 23 07:28:59 2009
New Revision: 737053

URL: http://svn.apache.org/viewvc?rev=737053&view=rev
Log:
http://issues.apache.org/activemq/browse/AMQNET-106

Add a unit test for this issue.

Added:
    
activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/test/csharp/OpenWire/PrefetchSizeZeroTest.cs

Added: 
activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/test/csharp/OpenWire/PrefetchSizeZeroTest.cs
URL: 
http://svn.apache.org/viewvc/activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/test/csharp/OpenWire/PrefetchSizeZeroTest.cs?rev=737053&view=auto
==============================================================================
--- 
activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/test/csharp/OpenWire/PrefetchSizeZeroTest.cs
 (added)
+++ 
activemq/activemq-dotnet/Apache.NMS.ActiveMQ/trunk/src/test/csharp/OpenWire/PrefetchSizeZeroTest.cs
 Fri Jan 23 07:28:59 2009
@@ -0,0 +1,73 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+using System;
+using NUnit.Framework;
+using Apache.NMS.Util;
+using NUnit.Framework.Extensions;
+using System.Threading;
+
+namespace Apache.NMS.Test
+{
+       [TestFixture]
+       public class PrefetchSizeZeroTest : NMSTestSupport
+       {       
+        protected static string DESTINATION_NAME = 
"TestPrefetchSizeZero?consumer.prefetchSize=0";
+                       
+               [Test, Explicit]
+               public void TestZeroPrefetchSize()
+               {
+                       using(IConnection connection = CreateConnection())
+                       {
+                               connection.Start();
+                               using(ISession session = 
connection.CreateSession(AcknowledgementMode.AutoAcknowledge))
+                               {
+                                       IDestination destination = 
SessionUtil.GetDestination(session, DESTINATION_NAME);
+                                       using(IMessageConsumer consumer = 
session.CreateConsumer(destination))
+                                       using(IMessageProducer producer = 
session.CreateProducer(destination))
+                                       {
+                                               SendMessage(producer);
+                        SendMessage(producer);
+
+                                               IMessage receivedMsg = 
consumer.Receive(TimeSpan.FromSeconds(5));
+                        Assert.IsNotNull(receivedMsg);
+                        receivedMsg = 
consumer.Receive(TimeSpan.FromSeconds(5));
+                        Assert.IsNotNull(receivedMsg);
+                                               receivedMsg = 
consumer.Receive(TimeSpan.FromSeconds(5));
+                        Assert.IsNull(receivedMsg);
+                        
+                                               // Go inactive...
+                                               
Thread.Sleep(TimeSpan.FromSeconds(10));
+
+                                               // Send another message.
+                                               SendMessage(producer);
+                                               receivedMsg = 
consumer.Receive(TimeSpan.FromSeconds(5));
+                                               Assert.IsNotNull(receivedMsg);
+                   
+                                       }
+                               }
+                       }
+               }
+       
+               protected void SendMessage(IMessageProducer producer)
+               {
+                       IMessage request = producer.CreateMessage();
+                       request.NMSType = "Test";
+                       producer.Send(request);
+               }
+       }
+}


Reply via email to