You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by tv...@apache.org on 2013/11/28 19:13:28 UTC
svn commit: r1546429 -
/tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java
Author: tveronezi
Date: Thu Nov 28 18:13:28 2013
New Revision: 1546429
URL: http://svn.apache.org/r1546429
Log:
Retry connection after 10 seconds in case of failure.
Slow machines (like mine. :) ) may not have a chance to startup derby before que connection request.
Modified:
tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java
Modified: tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java?rev=1546429&r1=1546428&r2=1546429&view=diff
==============================================================================
--- tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java (original)
+++ tomee/tomee/trunk/server/openejb-derbynet/src/test/java/org/apache/openejb/server/derbynet/DerbyNetworkServiceTest.java Thu Nov 28 18:13:28 2013
@@ -16,13 +16,16 @@
*/
package org.apache.openejb.server.derbynet;
+
import org.apache.openejb.server.ServerService;
import org.apache.openejb.server.ServiceFinder;
import org.apache.openejb.server.SimpleServiceManager;
import org.apache.openejb.util.NetworkUtil;
+import org.junit.Assert;
import org.junit.Test;
import java.io.IOException;
+import java.net.ConnectException;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;
@@ -33,6 +36,22 @@ import java.util.Properties;
*/
public class DerbyNetworkServiceTest {
+ private static final long RETRY_TIMEOUT = 10000;
+
+ private void connectSocket(int port) {
+ try {
+ try {
+ new Socket("localhost", port);
+ } catch (ConnectException e) {
+ // OK it didn't fully started yet. Wait a bit and try it again.
+ Thread.sleep(RETRY_TIMEOUT);
+ new Socket("localhost", port);
+ }
+ } catch (Exception e) {
+ Assert.fail("Impossible to connect using port\"" + port + "\". Message: " + e.getMessage());
+ }
+ }
+
@Test
public void test() throws Exception {
final int port = NetworkUtil.getNextAvailablePort();
@@ -53,9 +72,7 @@ public class DerbyNetworkServiceTest {
serviceManager.init();
serviceManager.start(false);
-
- final Socket derbyClient = new Socket("localhost", port);
-
+ connectSocket(port);
serviceManager.stop();
}
}