Fix flaxy MessageTransport test.
Review at http://gwt-code-reviews.appspot.com/234801
Review by: kjin@google.com
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@7744 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/dev/core/test/com/google/gwt/dev/shell/remoteui/MessageTransportTest.java b/dev/core/test/com/google/gwt/dev/shell/remoteui/MessageTransportTest.java
index 770534b..befc8cb 100644
--- a/dev/core/test/com/google/gwt/dev/shell/remoteui/MessageTransportTest.java
+++ b/dev/core/test/com/google/gwt/dev/shell/remoteui/MessageTransportTest.java
@@ -123,9 +123,21 @@
requestMessageBuilder.setServiceType(Message.Request.ServiceType.DEV_MODE);
Message.Request request = requestMessageBuilder.build();
- // Close the server's input stream; that will close the client's output
+ // Close the server's socket; that will close the client's output
// stream
- network.getServerSocket().getInputStream().close();
+ network.getServerSocket().close();
+
+ int sleepCycles = 0;
+ while (!network.getServerSocket().isClosed() && sleepCycles < 8) {
+ // Wait until the stream is closed before attempting to execute the
+ // request.
+ Thread.sleep(250);
+ sleepCycles++;
+ }
+
+ assertTrue(
+ "Unable to shut down server's input stream; cannot proceed with the test.",
+ network.getServerSocket().isClosed());
Future<Response> responseFuture = null;
responseFuture = messageTransport.executeRequestAsync(request);