You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2013/09/20 13:36:49 UTC

svn commit: r1524978 - /tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java

Author: markt
Date: Fri Sep 20 11:36:48 2013
New Revision: 1524978

URL: http://svn.apache.org/r1524978
Log:
Attempt to address intermittent failures suspect to be caused by timing/threading issues

Modified:
    tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java

Modified: tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java?rev=1524978&r1=1524977&r2=1524978&view=diff
==============================================================================
--- tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java (original)
+++ tomcat/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java Fri Sep 20 11:36:48 2013
@@ -86,6 +86,14 @@ public class TestWsSubprotocols extends 
 
         Assert.assertTrue(wsSession.isOpen());
         Assert.assertEquals("sp2", wsSession.getNegotiatedSubprotocol());
+        // Client thread might move faster than server. Wait for upto 5s for the
+        // subProtocols to be set
+        int count = 0;
+        while (count < 50 && SubProtocolsEndpoint.subprotocols == null) {
+            count++;
+            Thread.sleep(100);
+        }
+        Assert.assertNotNull(SubProtocolsEndpoint.subprotocols);
         Assert.assertArrayEquals(new String[]{"sp1","sp2"},
                 SubProtocolsEndpoint.subprotocols.toArray(new String[2]));
         wsSession.close();
@@ -94,7 +102,7 @@ public class TestWsSubprotocols extends 
     @ServerEndpoint(value = "/echo", subprotocols = {"sp1","sp2"})
     public static class SubProtocolsEndpoint {
         public static String PATH_BASIC = "/echo";
-        public static List<String> subprotocols;
+        public static volatile List<String> subprotocols;
 
         @OnOpen
         public void processOpen(@SuppressWarnings("unused") Session session,



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org