Author: aidan
Date: Fri Mar 14 08:57:40 2008
New Revision: 637137

URL: http://svn.apache.org/viewvc?rev=637137&view=rev
Log:
QPID-839 Use AMQish things to get the queue depth, elminating false negatives

Modified:
    
incubator/qpid/branches/M2.1/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java

Modified: 
incubator/qpid/branches/M2.1/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
URL: 
http://svn.apache.org/viewvc/incubator/qpid/branches/M2.1/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java?rev=637137&r1=637136&r2=637137&view=diff
==============================================================================
--- 
incubator/qpid/branches/M2.1/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
 (original)
+++ 
incubator/qpid/branches/M2.1/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
 Fri Mar 14 08:57:40 2008
@@ -1,5 +1,8 @@
 package org.apache.qpid.test.client;
 
+import org.apache.qpid.AMQException;
+import org.apache.qpid.client.AMQDestination;
+import org.apache.qpid.client.AMQSession;
 import org.apache.qpid.test.VMTestCase;
 
 import javax.jms.Connection;
@@ -69,14 +72,14 @@
         producerConnection.close();
     }
 
-    public void testDupsOK() throws NamingException, JMSException, 
InterruptedException
+    public void testDupsOK() throws NamingException, JMSException, 
InterruptedException, AMQException
     {
         //Create Client
         Connection clientConnection = ((ConnectionFactory) 
_context.lookup("connection")).createConnection();
 
         clientConnection.start();
 
-        Session clientSession = clientConnection.createSession(false, 
Session.DUPS_OK_ACKNOWLEDGE);
+        final Session clientSession = clientConnection.createSession(false, 
Session.DUPS_OK_ACKNOWLEDGE);
 
         MessageConsumer consumer = clientSession.createConsumer(_queue);
 
@@ -105,13 +108,17 @@
                         {
                             try
                             {
-                                int remainingMessages = 
getMessageCount(_queue.getQueueName());
+                                long remainingMessages = ((AMQSession) 
clientSession).getQueueDepth((AMQDestination) _queue);
                                 if(remainingMessages != 0)
                                 {
 
                                     assertEquals("The queue should have 0 msgs 
left, seen " + _msgCount + " messages.", 0, 
getMessageCount(_queue.getQueueName()));
                                 }
                             }
+                            catch (AMQException e)
+                            {
+                                assertNull("Got AMQException", e);
+                            }
                             finally
                             {
                                 //This is the last message so release test.
@@ -144,9 +151,9 @@
 
 //        consumer.close();
 
+        assertEquals("The queue should have 0 msgs left", 0, ((AMQSession) 
clientSession).getQueueDepth((AMQDestination) _queue));
         clientConnection.close();
 
-        assertEquals("The queue should have 0 msgs left", 0, 
getMessageCount(_queue.getQueueName()));
     }
 
 


Reply via email to