Author: gtully
Date: Fri Nov 20 12:02:57 2009
New Revision: 882526
URL: http://svn.apache.org/viewvc?rev=882526&view=rev
Log:
merge -c 882510 - some more resiliance to slow hardware for this test
Modified:
activemq/branches/activemq-5.3/activemq-core/src/test/java/org/apache/activemq/usecases/ExpiredMessagesTest.java
Modified:
activemq/branches/activemq-5.3/activemq-core/src/test/java/org/apache/activemq/usecases/ExpiredMessagesTest.java
URL:
http://svn.apache.org/viewvc/activemq/branches/activemq-5.3/activemq-core/src/test/java/org/apache/activemq/usecases/ExpiredMessagesTest.java?rev=882526&r1=882525&r2=882526&view=diff
==============================================================================
---
activemq/branches/activemq-5.3/activemq-core/src/test/java/org/apache/activemq/usecases/ExpiredMessagesTest.java
(original)
+++
activemq/branches/activemq-5.3/activemq-core/src/test/java/org/apache/activemq/usecases/ExpiredMessagesTest.java
Fri Nov 20 12:02:57 2009
@@ -37,6 +37,7 @@
import javax.jms.MessageConsumer;
import javax.jms.MessageProducer;
import javax.jms.Session;
+import javax.management.InstanceNotFoundException;
import javax.management.ObjectName;
import junit.framework.Test;
@@ -243,25 +244,27 @@
final boolean deleteAllMessages = false;
broker = createBroker(deleteAllMessages, 5000);
- view = createView(destination);
- LOG.info("Stats: size: " + view.getQueueSize() + ", enqueues: "
- + view.getDequeueCount() + ", dequeues: "
- + view.getDequeueCount() + ", dispatched: "
- + view.getDispatchCount() + ", inflight: "
- + view.getInFlightCount() + ", expiries: "
- + view.getExpiredCount());
+ Wait.waitFor(new Wait.Condition() {
+ public boolean isSatisified() throws Exception {
+ boolean result = false;
+ try {
+ DestinationViewMBean view = createView(destination);
+ LOG.info("Stats: size: " + view.getQueueSize() + ",
enqueues: "
+ + view.getDequeueCount() + ", dequeues: "
+ + view.getDequeueCount() + ", dispatched: "
+ + view.getDispatchCount() + ", inflight: "
+ + view.getInFlightCount() + ", expiries: "
+ + view.getExpiredCount());
- long expiry = System.currentTimeMillis() + 30000;
- while (view.getQueueSize() > 0 && System.currentTimeMillis() < expiry)
{
- Thread.sleep(500);
- }
- LOG.info("Stats: size: " + view.getQueueSize() + ", enqueues: "
- + view.getDequeueCount() + ", dequeues: "
- + view.getDequeueCount() + ", dispatched: "
- + view.getDispatchCount() + ", inflight: "
- + view.getInFlightCount() + ", expiries: "
- + view.getExpiredCount());
- assertEquals("Wrong QueueSize: ", 0, view.getQueueSize());
+ result = view.getQueueSize() == 0;
+ } catch (InstanceNotFoundException expectedOnSlowMachines) {
+ }
+ return result;
+ }
+ });
+
+ view = createView(destination);
+ assertEquals("Expect empty queue, QueueSize: ", 0,
view.getQueueSize());
assertEquals("all dequeues were expired", view.getDequeueCount(),
view.getExpiredCount());
}