Author: markt Date: Fri Aug 23 11:05:07 2013 New Revision: 1516821 URL: http://svn.apache.org/r1516821 Log: Make test more resilient against timing differences on different platforms. Hopefully this fixes the failure current seen on Gump runs.
Modified: tomcat/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java tomcat/trunk/test/org/apache/catalina/valves/TesterAccessLogValve.java Modified: tomcat/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java?rev=1516821&r1=1516820&r2=1516821&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java (original) +++ tomcat/trunk/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java Fri Aug 23 11:05:07 2013 @@ -310,11 +310,16 @@ public class TestNonBlockingAPI extends String line = resultString.substring(lineStart, lineEnd + 1); Assert.assertEquals("HTTP/1.1 200 OK\r\n", line); - try { - //allow the listeners to finish up - Thread.sleep(1000); - } catch (Exception e) { + // Listeners are invoked and access valve entries created on a different + // thread so give that thread a chance to complete its work. + int count = 0; + while (count < 50 || + !(servlet.wlistener.onErrorInvoked || servlet.rlistener.onErrorInvoked) || + alv.getEntryCount() < 1) { + Thread.sleep(100); + count ++; } + Assert.assertTrue("Error listener should have been invoked.", servlet.wlistener.onErrorInvoked || servlet.rlistener.onErrorInvoked); Modified: tomcat/trunk/test/org/apache/catalina/valves/TesterAccessLogValve.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/valves/TesterAccessLogValve.java?rev=1516821&r1=1516820&r2=1516821&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/catalina/valves/TesterAccessLogValve.java (original) +++ tomcat/trunk/test/org/apache/catalina/valves/TesterAccessLogValve.java Fri Aug 23 11:05:07 2013 @@ -65,6 +65,10 @@ public class TesterAccessLogValve extend getNext().invoke(request, response); } + public int getEntryCount() { + return entries.size(); + } + public void validateAccessLog(int count, int status, long minTime, long maxTime) throws Exception { --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org