Author: rjung
Date: Wed Dec 18 14:38:35 2013
New Revision: 1551955
URL: http://svn.apache.org/r1551955
Log:
Sync TestWsSubprotocols with trunk to prevent
occasional test failures.
Modified:
tomcat/tc7.0.x/trunk/ (props changed)
tomcat/tc7.0.x/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java
Propchange: tomcat/tc7.0.x/trunk/
------------------------------------------------------------------------------
Merged /tomcat/trunk:r1524978,1551953
Modified:
tomcat/tc7.0.x/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java
URL:
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java?rev=1551955&r1=1551954&r2=1551955&view=diff
==============================================================================
---
tomcat/tc7.0.x/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java
(original)
+++
tomcat/tc7.0.x/trunk/test/org/apache/tomcat/websocket/TestWsSubprotocols.java
Wed Dec 18 14:38:35 2013
@@ -72,11 +72,6 @@ public class TestWsSubprotocols extends
.build(), new URI("ws://localhost:" + getPort()
+ SubProtocolsEndpoint.PATH_BASIC));
- try {
- Thread.sleep(100);
- } catch (InterruptedException e) {
- // Ignore
- }
Assert.assertTrue(wsSession.isOpen());
if (wsSession.getNegotiatedSubprotocol() != null) {
Assert.assertTrue(wsSession.getNegotiatedSubprotocol().isEmpty());
@@ -90,13 +85,16 @@ public class TestWsSubprotocols extends
.build(), new URI("ws://localhost:" + getPort()
+ SubProtocolsEndpoint.PATH_BASIC));
- try {
- Thread.sleep(100);
- } catch (InterruptedException e) {
- // Ignore
- }
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();
@@ -106,7 +104,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: [email protected]
For additional commands, e-mail: [email protected]