You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by gt...@apache.org on 2010/01/28 10:09:00 UTC
svn commit: r904005 - in
/activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport:
http/HttpTransportBrokerTest.java https/HttpsTransportBrokerTest.java
Author: gtully
Date: Thu Jan 28 09:09:00 2010
New Revision: 904005
URL: http://svn.apache.org/viewvc?rev=904005&view=rev
Log:
validate jetty availabilty via socket connect to take out the guess work on loaded machines - avoid connection refused intermittent failures
Modified:
activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/http/HttpTransportBrokerTest.java
activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/https/HttpsTransportBrokerTest.java
Modified: activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/http/HttpTransportBrokerTest.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/http/HttpTransportBrokerTest.java?rev=904005&r1=904004&r2=904005&view=diff
==============================================================================
--- activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/http/HttpTransportBrokerTest.java (original)
+++ activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/http/HttpTransportBrokerTest.java Thu Jan 28 09:09:00 2010
@@ -16,7 +16,11 @@
*/
package org.apache.activemq.transport.http;
+import java.net.Socket;
import java.net.URI;
+import java.net.URL;
+
+import javax.net.SocketFactory;
import junit.framework.Test;
import junit.textui.TestRunner;
@@ -24,9 +28,13 @@
import org.apache.activemq.broker.BrokerFactory;
import org.apache.activemq.broker.BrokerService;
import org.apache.activemq.transport.TransportBrokerTestSupport;
+import org.apache.activemq.util.Wait;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
public class HttpTransportBrokerTest extends TransportBrokerTestSupport {
+ private static final Log LOG = LogFactory.getLog(HttpTransportBrokerTest.class);
protected String getBindLocation() {
return "http://localhost:8081";
}
@@ -34,11 +42,28 @@
protected void setUp() throws Exception {
maxWait = 2000;
super.setUp();
- Thread.sleep(1000);
- Thread.yield();
+ waitForJettySocketToAccept(getBindLocation());
}
- protected BrokerService createBroker() throws Exception {
+ private void waitForJettySocketToAccept(String bindLocation) throws Exception {
+ final URL url = new URL(bindLocation);
+ assertTrue("Jetty endpoint is available", Wait.waitFor(new Wait.Condition() {
+
+ public boolean isSatisified() throws Exception {
+ boolean canConnect = false;
+ try {
+ Socket socket = SocketFactory.getDefault().createSocket(url.getHost(), url.getPort());
+ socket.close();
+ canConnect = true;
+ } catch (Exception e) {
+ LOG.warn("verify jettty available, failed to connect to " + url + e);
+ }
+ return canConnect;
+ }}, 60 * 1000));
+
+ }
+
+ protected BrokerService createBroker() throws Exception {
BrokerService broker = BrokerFactory.createBroker(new URI("broker:()/localhost?persistent=false&useJmx=false"));
connector = broker.addConnector(getBindLocation());
return broker;
@@ -47,7 +72,7 @@
protected void tearDown() throws Exception {
super.tearDown();
// Give the jetty server enough time to shutdown before starting another one
- Thread.sleep(500);
+ Thread.sleep(100);
}
public static Test suite() {
Modified: activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/https/HttpsTransportBrokerTest.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/https/HttpsTransportBrokerTest.java?rev=904005&r1=904004&r2=904005&view=diff
==============================================================================
--- activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/https/HttpsTransportBrokerTest.java (original)
+++ activemq/trunk/activemq-optional/src/test/java/org/apache/activemq/transport/https/HttpsTransportBrokerTest.java Thu Jan 28 09:09:00 2010
@@ -35,15 +35,6 @@
System.setProperty("javax.net.ssl.keyStoreType", "jks");
//System.setProperty("javax.net.debug", "ssl,handshake,data,trustmanager");
super.setUp();
-
- Thread.sleep(2000);
- Thread.yield();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- // Give the jetty server more time to shutdown before starting another one
- Thread.sleep(2000);
}
public static Test suite() {