You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2012/10/31 22:06:15 UTC
svn commit: r1404348 -
/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java
Author: tabish
Date: Wed Oct 31 21:06:15 2012
New Revision: 1404348
URL: http://svn.apache.org/viewvc?rev=1404348&view=rev
Log:
fix brokerSerivce instances left running if assertions fail
Modified:
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java
Modified: activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java?rev=1404348&r1=1404347&r2=1404348&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java (original)
+++ activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DuplexNetworkMBeanTest.java Wed Oct 31 21:06:15 2012
@@ -22,19 +22,14 @@ import static org.junit.Assume.assumeNot
import java.net.MalformedURLException;
import java.util.Set;
-import javax.management.MBeanServerConnection;
import javax.management.ObjectInstance;
import javax.management.ObjectName;
-import javax.management.remote.JMXConnector;
-import javax.management.remote.JMXConnectorFactory;
-import javax.management.remote.JMXServiceURL;
import org.apache.activemq.broker.BrokerService;
+import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.junit.Test;
-
public class DuplexNetworkMBeanTest {
protected static final Logger LOG = LoggerFactory.getLogger(DuplexNetworkMBeanTest.class);
@@ -44,10 +39,10 @@ public class DuplexNetworkMBeanTest {
BrokerService broker = new BrokerService();
broker.setBrokerName("broker");
broker.addConnector("tcp://localhost:61617?transport.reuseAddress=true");
-
+
return broker;
}
-
+
protected BrokerService createNetworkedBroker() throws Exception {
BrokerService broker = new BrokerService();
broker.setBrokerName("networkedBroker");
@@ -56,65 +51,72 @@ public class DuplexNetworkMBeanTest {
networkConnector.setDuplex(true);
return broker;
}
-
+
@Test
public void testMbeanPresenceOnNetworkBrokerRestart() throws Exception {
BrokerService broker = createBroker();
- broker.start();
- assertEquals(1, countMbeans(broker, "Connector", 30000));
- assertEquals(0, countMbeans(broker, "Connection"));
- BrokerService networkedBroker = null;
- for (int i=0; i<numRestarts; i++) {
- networkedBroker = createNetworkedBroker();
- networkedBroker.start();
- assertEquals(1, countMbeans(networkedBroker, "NetworkBridge", 2000));
- assertEquals(1, countMbeans(broker, "NetworkBridge", 2000));
- assertEquals(1, countMbeans(broker, "Connection"));
- networkedBroker.stop();
- networkedBroker.waitUntilStopped();
- assertEquals(0, countMbeans(networkedBroker, "stopped"));
- assertEquals(0, countMbeans(broker, "NetworkBridge"));
+ try {
+ broker.start();
+ assertEquals(1, countMbeans(broker, "Connector", 30000));
+ assertEquals(0, countMbeans(broker, "Connection"));
+ BrokerService networkedBroker = null;
+ for (int i=0; i<numRestarts; i++) {
+ networkedBroker = createNetworkedBroker();
+ networkedBroker.start();
+ assertEquals(1, countMbeans(networkedBroker, "NetworkBridge", 2000));
+ assertEquals(1, countMbeans(broker, "NetworkBridge", 2000));
+ assertEquals(1, countMbeans(broker, "Connection"));
+ networkedBroker.stop();
+ networkedBroker.waitUntilStopped();
+ assertEquals(0, countMbeans(networkedBroker, "stopped"));
+ assertEquals(0, countMbeans(broker, "NetworkBridge"));
+ }
+
+ assertEquals(0, countMbeans(networkedBroker, "NetworkBridge"));
+ assertEquals(0, countMbeans(networkedBroker, "Connector"));
+ assertEquals(0, countMbeans(networkedBroker, "Connection"));
+ assertEquals(1, countMbeans(broker, "Connector"));
+ } finally {
+ broker.stop();
+ broker.waitUntilStopped();
}
-
- assertEquals(0, countMbeans(networkedBroker, "NetworkBridge"));
- assertEquals(0, countMbeans(networkedBroker, "Connector"));
- assertEquals(0, countMbeans(networkedBroker, "Connection"));
- assertEquals(1, countMbeans(broker, "Connector"));
- broker.stop();
- broker.waitUntilStopped();
}
@Test
public void testMbeanPresenceOnBrokerRestart() throws Exception {
-
+
BrokerService networkedBroker = createNetworkedBroker();
- networkedBroker.start();
- assertEquals(1, countMbeans(networkedBroker, "Connector", 30000));
- assertEquals(0, countMbeans(networkedBroker, "Connection"));
-
- BrokerService broker = null;
- for (int i=0; i<numRestarts; i++) {
- broker = createBroker();
- broker.start();
- assertEquals(1, countMbeans(networkedBroker, "NetworkBridge", 5000));
- assertEquals("restart number: " + i, 1, countMbeans(broker, "Connection", 10000));
-
- broker.stop();
- broker.waitUntilStopped();
- assertEquals(0, countMbeans(broker, "stopped"));
+ try {
+ networkedBroker.start();
+ assertEquals(1, countMbeans(networkedBroker, "Connector", 30000));
+ assertEquals(0, countMbeans(networkedBroker, "Connection"));
+
+ BrokerService broker = null;
+ for (int i=0; i<numRestarts; i++) {
+ broker = createBroker();
+ try {
+ broker.start();
+ assertEquals(1, countMbeans(networkedBroker, "NetworkBridge", 5000));
+ assertEquals("restart number: " + i, 1, countMbeans(broker, "Connection", 10000));
+ } finally {
+ broker.stop();
+ broker.waitUntilStopped();
+ }
+ assertEquals(0, countMbeans(broker, "stopped"));
+ }
+
+ //assertEquals(0, countMbeans(networkedBroker, "NetworkBridge"));
+ assertEquals(1, countMbeans(networkedBroker, "Connector"));
+ assertEquals(0, countMbeans(networkedBroker, "Connection"));
+ assertEquals(0, countMbeans(broker, "Connection"));
+ } finally {
+ networkedBroker.stop();
+ networkedBroker.waitUntilStopped();
}
-
- //assertEquals(0, countMbeans(networkedBroker, "NetworkBridge"));
- assertEquals(1, countMbeans(networkedBroker, "Connector"));
- assertEquals(0, countMbeans(networkedBroker, "Connection"));
- assertEquals(0, countMbeans(broker, "Connection"));
-
- networkedBroker.stop();
- networkedBroker.waitUntilStopped();
}
-
+
private int countMbeans(BrokerService broker, String type) throws Exception {
- return countMbeans(broker, type, 0);
+ return countMbeans(broker, type, 0);
}
private int countMbeans(BrokerService broker, String type, int timeout) throws Exception {
@@ -135,14 +137,14 @@ public class DuplexNetworkMBeanTest {
logAllMbeans(broker);
}
} while ((mbeans == null || mbeans.isEmpty()) && expiryTime > System.currentTimeMillis());
-
+
// If port 1099 is in use when the Broker starts, starting the jmx
// connector will fail. So, if we have no mbsc to query, skip the
// test.
if (timeout > 0) {
assumeNotNull(mbeans);
}
-
+
return count;
}