Thanks Marc! That would be great. Below are my comments from the message to watchdog-dev. Also, one change was because the test unnecessarily assumes the default mime type for the server is not "text/html". Attached is the patch. Let me know if you have any questions. Thanks again. Shawn Original comments: Hi, I have been working with the watchdog tests using Jigsaw and HTTP 1.1 and Enhydra and have found a few problems in the tests. These are mainly related to the tests not being able to handle multiple headers being sent on a single header line as is done in HTTP 1.1. There are also some problems with the tests expecting a particular date format and timezone. And finally, some tests use the "Set-Cookie" header with no name and only a value, which is not correct in the current cookie spec. Since these tests are not designed to test cookies or cookie headers it is not necessary to use the "Set-Cookie" header. I have attached a complete patch file that includes all changes. Would it be preferable to send individual diffs for each file? There are 13 modified files and a total of 330 lines in the overall "diff -u" patch file. I created the diff against the 2001-02-03 source release. Let me know if you want a different format or need additional information. Discussion of the changes is welcomed. Thanks. Shawn Marc Saegesser wrote: > Shawn, > > Could re-post your patches? I don't have the your original email with the > patches. I'll see if I can find time look at them. > > Marc Saegesser > > > -----Original Message----- > > From: Shawn McMurdo [mailto:[EMAIL PROTECTED]] > > Sent: Wednesday, April 11, 2001 8:11 PM > > To: [EMAIL PROTECTED] > > Subject: Re: [Fwd: Watchdog sleeping?] > > > > > > Hi Jeff, > > Thanks for the info and the pointer! > > Shawn > > > > Jeff Turner wrote: > > > > > On Wed, Apr 11, 2001 at 01:22:37PM -0400, Shawn McMurdo wrote: > > > > No one on watchdog-dev or general seems to know anything about > > > > the status of Watchdog. > > > > Does anyone here on tomcat-dev know what is up with Watchdog? > > > > > > I think it's rather dead. Craig is in charge of it now. From > > the IRC logs for > > > the PMC meeting: > > > > > > <craigmcc> Question: is there any widespread continued > > interest in tools or > > > watchdog? > > > <craigmcc> as Jakarta subprojects, I mean? > > > <jon> not that i know of > > > <Sam> Craig: I'd like to assign these subprojects to you and > > let you determine > > > what is best for them. > > > <craigmcc> sounds good (re tools/watchdog) > > > > > > http://jakarta.apache.org/site/pmc/01-03-19-meeting-irclog.html > > > > > > --Jeff > > > > > > > Shawn > > > > > > > > -- > > > > Shawn McMurdo mailto:[EMAIL PROTECTED] > > > > Lutris Technologies http://www.lutris.com > > > > Enhydra.Org http://www.enhydra.org > > > > -- > > Shawn McMurdo mailto:[EMAIL PROTECTED] > > Lutris Technologies http://www.lutris.com > > Enhydra.Org http://www.enhydra.org > > -- Shawn McMurdo mailto:[EMAIL PROTECTED] Lutris Technologies http://www.lutris.com Enhydra.Org http://www.enhydra.org
Index: src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/FlushBufferTest.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/FlushBufferTest.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/FlushBufferTest.java 2001/03/30 18:38:04 1.1.1.1 +++ +src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/FlushBufferTest.java + 2001/04/04 23:57:40 1.2 @@ -109,7 +109,7 @@ System.out.println("Buffer:"+sb); */ - if(connection.getContentType().equals("text/html")) { + if(connection.getContentType().equals("text/junk")) { testResult = new TestResult(); Index: src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/ResetTest.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/ResetTest.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/ResetTest.java 2001/03/30 18:38:04 1.1.1.1 +++ +src/clients/org/apache/jcheck/servlet/client/javax_servlet/ServletResponse/ResetTest.java + 2001/04/04 23:57:40 1.2 @@ -90,20 +90,17 @@ /** * The Servlet set the content-type header to - * "text/html" and then it called reset. - * We should get the default content type - * (text/plain) here + * "text/junk" and then it called reset. + * We should get the default content type here. */ String contentType = connection.getContentType(); if (contentType == null) contentType = ""; - if (contentType.equals("text/html")) { + if (contentType.equals("text/junk")) { Exception e = new Exception("Problem with clearBuffer"); testResult = getTestResult(testResult,e); - } - else { - + } else { // if it comes here it is // obvious that it passes Index: src/clients/org/apache/jcheck/servlet/client/javax_servlet_http/HttpServletResponse/SetDateHeader_1Test.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/clients/org/apache/jcheck/servlet/client/javax_servlet_http/HttpServletResponse/SetDateHeader_1Test.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/clients/org/apache/jcheck/servlet/client/javax_servlet_http/HttpServletResponse/SetDateHeader_1Test.java 2001/03/30 18:38:08 1.1.1.1 +++ +src/clients/org/apache/jcheck/servlet/client/javax_servlet_http/HttpServletResponse/SetDateHeader_1Test.java + 2001/04/04 23:57:41 1.2 @@ -80,36 +80,39 @@ return sm.getString("SetDateHeader_1Test.description"); } public TestResult runTest() { - TestResult testResult = null; - try { - HttpURLConnection connection = getConnection(); - - //get the set field from the reponse - - String ate = connection.getHeaderField("Set-Cookie"); - - if(ate==null) { - testResult=getTestResult(testResult,new Exception("Value wrong")); + TestResult testResult = null; + try { + HttpURLConnection connection = getConnection(); + + //get the set field from the reponse + String ate = connection.getHeaderField("DateTest"); + + if (ate == null) { + testResult = getTestResult(testResult, + new Exception("Value wrong")); + } else { + try { + long ms = java.util.Date.parse(ate); + + // could vary depending on locale or timezone + if (ms == 1234567890L + || ate.equals("Thu, 15 Jan 1970 06:56:07 GMT") + || ate.equals("Wed Jan 14 22:56:07 PST 1970")) { + testResult = getTestResult(connection); + } else { + testResult = getTestResult(testResult, + new Exception("Wrong Value")); } - else { - try { - - java.util.Date.parse(ate); - if(ate.equals("Thu, 15 Jan 1970 06:56:07 GMT")) - testResult = getTestResult(connection); - else - testResult=getTestResult(testResult,new Exception("Wrong Value")); - - }catch(IllegalArgumentException iae) { - - testResult=getTestResult(testResult,new Exception("Wrong Date Format")); - } - } - }catch(Exception e) { - testResult = getTestResult(testResult,e); + } catch (IllegalArgumentException iae) { + testResult = getTestResult(testResult, + new Exception("Wrong Date Format")); + } } - return testResult; + } catch (Exception e) { + testResult = getTestResult(testResult, e); + } + return testResult; } } Index: src/clients/org/apache/jcheck/servlet/resources/LocalStrings.properties =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/clients/org/apache/jcheck/servlet/resources/LocalStrings.properties,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/clients/org/apache/jcheck/servlet/resources/LocalStrings.properties 2001/03/30 18:38:10 1.1.1.1 +++ src/clients/org/apache/jcheck/servlet/resources/LocalStrings.properties +2001/04/04 23:57:41 1.2 @@ -344,7 +344,7 @@ IsCommittedTest.description="IsCommittedTest" FlushBufferTest.description="FlushBufferTest" SetLocaleTest.description="Setting Locale" -GetBufferSizeTest.description="Getting BUfferSize" +GetBufferSizeTest.description="Getting BufferSize" GetBufferSize_1Test.description="Negative Test:GetBufferSize" SetBufferSizeTest.description="Setting BufferSize" SetBufferSize_1Test.description="NegativeTest2:setBufferSize" Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/FlushBufferTestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/FlushBufferTestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/FlushBufferTestServlet.java 2001/03/30 18:38:22 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/FlushBufferTestServlet.java + 2001/04/04 23:57:42 1.2 @@ -120,7 +120,7 @@ //after flushing the client should get this - response.setContentType("text/html"); + response.setContentType("text/junk"); response.flushBuffer(); Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/ResetTestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/ResetTestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/ResetTestServlet.java 2001/03/30 18:38:22 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet/ServletResponse/ResetTestServlet.java + 2001/04/04 23:57:42 1.2 @@ -109,7 +109,7 @@ response.setBufferSize(20); //Write some data to the stream - response.setContentType("text/html"); + response.setContentType("text/junk"); // Reset the response response.reset(); @@ -118,13 +118,16 @@ props.put(Constants.Response.Message,""); } catch (IOException ioe) { +ioe.printStackTrace(); props.put(Constants.Response.Exception,ioe.getMessage()); } catch (RuntimeException e) { //servlet crash? +e.printStackTrace(); props.put(Constants.Response.Exception,e.getMessage()); - }catch(Exception e) { + } catch (Exception e) { +e.printStackTrace(); //Unknown Exception props.put(Constants.Response.Exception,e.getMessage()); @@ -136,6 +139,5 @@ } - - } + Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletRequest/GetHeaders_01TestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletRequest/GetHeaders_01TestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletRequest/GetHeaders_01TestServlet.java 2001/03/30 18:38:24 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletRequest/GetHeaders_01TestServlet.java + 2001/04/04 23:57:43 1.2 @@ -101,7 +101,6 @@ msg="OK"; status="true"; } - props.put(Constants.Response.Status, status); props.put(Constants.Response.Message, msg); return props; Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeaderTestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeaderTestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeaderTestServlet.java 2001/03/30 18:38:25 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeaderTestServlet.java + 2001/04/04 23:57:43 1.2 @@ -96,8 +96,8 @@ long date=9876543210L; long date1=1234567890L; - response.setDateHeader("Set-Cookie",date); - response.addDateHeader("Set-Cookie",date1); + response.setDateHeader("DateTest", date); + response.addDateHeader("DateTest", date1); //we will check in the client side Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeader_1TestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeader_1TestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeader_1TestServlet.java 2001/03/30 18:38:25 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddDateHeader_1TestServlet.java + 2001/04/04 23:57:43 1.2 @@ -100,7 +100,7 @@ String status = "true"; long date=9876543210L; - response.addDateHeader("Set-Cookie",date); + response.addDateHeader("DateTest", date); //we will check in the client side Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeaderTestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeaderTestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeaderTestServlet.java 2001/03/30 18:38:25 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeaderTestServlet.java + 2001/04/04 23:57:43 1.2 @@ -93,8 +93,8 @@ String msg = ""; String status = "true"; - response.setIntHeader("Set-Cookie",1); - response.addIntHeader("Set-Cookie",2); + response.setIntHeader("IntTest", 1); + response.addIntHeader("IntTest", 2); // we will check in the client side Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeader_1TestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeader_1TestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeader_1TestServlet.java 2001/03/30 18:38:25 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/AddIntHeader_1TestServlet.java + 2001/04/04 23:57:43 1.2 @@ -103,7 +103,7 @@ //just add one header - response.addIntHeader("Set-Cookie",1); + response.addIntHeader("IntTest", 1); // we will check in the client side Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetDateHeader_1TestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetDateHeader_1TestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetDateHeader_1TestServlet.java 2001/03/30 18:38:26 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetDateHeader_1TestServlet.java + 2001/04/04 23:57:43 1.2 @@ -103,10 +103,10 @@ long date=9876543210L; long date1=1234567890L; - response.setDateHeader("Set-Cookie",date); + response.setDateHeader("DateTest", date); //This should reach the client - response.setDateHeader("Set-Cookie",date1); + response.setDateHeader("DateTest", date1); //we will check in the client side Index: src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetIntHeader_1TestServlet.java =================================================================== RCS file: /u/cvs/Projects/EnhydraOrg/platforms/EE/services/Web/tests/Watchdog/src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetIntHeader_1TestServlet.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetIntHeader_1TestServlet.java 2001/03/30 18:38:26 1.1.1.1 +++ +src/server/servlet-tests/WEB-INF/classes/tests/javax_servlet_http/HttpServletResponse/SetIntHeader_1TestServlet.java + 2001/04/04 23:57:43 1.2 @@ -98,8 +98,8 @@ String msg = ""; String status = "true"; - response.setIntHeader("Set-Cookie",20); - response.setIntHeader("Set-Cookie",10); + response.setIntHeader("IntTest",20); + response.setIntHeader("IntTest",10); // we will check in the client side