Author: remm Date: Fri Mar 21 19:45:39 2014 New Revision: 1580030 URL: http://svn.apache.org/r1580030 Log: Improve test so that it cannot hang forever (it will check it gets an exception and completed, instead).
Modified: tomcat/trunk/test/org/apache/catalina/connector/TestCoyoteAdapter.java Modified: tomcat/trunk/test/org/apache/catalina/connector/TestCoyoteAdapter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/connector/TestCoyoteAdapter.java?rev=1580030&r1=1580029&r2=1580030&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/catalina/connector/TestCoyoteAdapter.java (original) +++ tomcat/trunk/test/org/apache/catalina/connector/TestCoyoteAdapter.java Fri Mar 21 19:45:39 2014 @@ -304,6 +304,7 @@ public class TestCoyoteAdapter extends T while (servlet.getThread().isAlive()) { Thread.sleep(250); } + Assert.assertTrue(servlet.isCompleted()); } private static class AsyncServlet extends HttpServlet { @@ -313,11 +314,16 @@ public class TestCoyoteAdapter extends T // This is a hack that won't work generally as servlets are expected to // handle more than one request. private Thread t; + private boolean completed = false; public Thread getThread() { return t; } + public boolean isCompleted() { + return completed; + } + @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { @@ -334,13 +340,14 @@ public class TestCoyoteAdapter extends T @Override public void run() { - while (true) { + for (int i = 0; i < 20; i++) { try { os.write("TEST".getBytes(StandardCharsets.UTF_8)); os.flush(); Thread.sleep(1000); } catch (Exception e) { asyncCtxt.complete(); + completed = true; break; } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org