Author: jfclere Date: Mon Mar 17 02:03:05 2008 New Revision: 637793 URL: http://svn.apache.org/viewvc?rev=637793&view=rev Log: Arrange the cookie tests.
Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/test/build.xml tomcat/tc6.0.x/trunk/test/org/apache/catalina/tomcat/util/http/TestCookies.java tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=637793&r1=637792&r2=637793&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Mar 17 02:03:05 2008 @@ -28,11 +28,6 @@ PATCHES ACCEPTED TO BACKPORT: [ start all new proposals below, under PATCHES PROPOSED. ] -* Add tests for the cookie parsing and use package org.apache.catalina.tomcat.util.http - http://people.apache.org/~jfclere/patches/test_cookies.patch2 - +1: jfclere, fhanik, markt - -1: - PATCHES PROPOSED TO BACKPORT: [ New proposals should be added at the end of the list ] Modified: tomcat/tc6.0.x/trunk/test/build.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/test/build.xml?rev=637793&r1=637792&r2=637793&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/test/build.xml (original) +++ tomcat/tc6.0.x/trunk/test/build.xml Mon Mar 17 02:03:05 2008 @@ -28,6 +28,7 @@ <property name="tomcat.build" value="${basedir}/../output/build"/> <property name="compile.source" value="1.5"/> + <property name="compile.debug" value="true"/> <property name="junit.jar" value="${junit.home}/junit.jar"/> <property name="test.runner" value="junit.textui.TestRunner"/> @@ -61,7 +62,7 @@ <target name="all" depends="compile"> <java dir="${test.classes}" classname="${test.runner}" fork="yes" failonerror="${test.failonerror}"> - <arg value="TestCookies"/> + <arg value="org.apache.catalina.tomcat.util.http.TestCookies"/> <classpath refid="tomcat.test.classpath"/> </java> Modified: tomcat/tc6.0.x/trunk/test/org/apache/catalina/tomcat/util/http/TestCookies.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/test/org/apache/catalina/tomcat/util/http/TestCookies.java?rev=637793&r1=637792&r2=637793&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/test/org/apache/catalina/tomcat/util/http/TestCookies.java (original) +++ tomcat/tc6.0.x/trunk/test/org/apache/catalina/tomcat/util/http/TestCookies.java Mon Mar 17 02:03:05 2008 @@ -15,6 +15,8 @@ * limitations under the License. */ +package org.apache.catalina.tomcat.util.http; + import org.apache.tomcat.util.http.Cookies; import org.apache.tomcat.util.http.ServerCookie; @@ -69,8 +71,8 @@ test("$Version=1;foo=\"bar\";$Domain=apache.org;$Port=8080;a=b", "foo", "bar", "a", "b"); // make sure these never split into two cookies - JVK - test("$Version=1;foo=\"b\"ar\";$Domain=apache.org;$Port=8080;a=b", "foo", "b", "a", "b"); - test("$Version=1;foo=\"b\\\"ar\";$Domain=apache.org;$Port=8080;a=b", "foo", "b\\\"ar", "a", "b"); + test("$Version=1;foo=\"b\"ar\";$Domain=apache.org;$Port=8080;a=b", "foo", "b", "a", "b"); // Incorrectly escaped. + test("$Version=1;foo=\"b\\\"ar\";$Domain=apache.org;$Port=8080;a=b", "foo", "b\"ar", "a", "b"); // correctly escaped. test("$Version=1;foo=\"b'ar\";$Domain=apache.org;$Port=8080;a=b", "foo", "b'ar", "a", "b"); // JFC: sure it is "b" and not b'ar ? test("$Version=1;foo=b'ar;$Domain=apache.org;$Port=8080;a=b", "foo", "b", "a", "b"); @@ -113,8 +115,28 @@ test("foo;a=b;;\\;bar=rab", "foo", "", "a", "b", "bar", "rab"); + + // Try all the separators of version1 in version0 cookie. + // Won't work we only parse version1 cookie result 1 cookie. + test("a=()<>@:\\\"/[]?={}\t; foo=bar", "foo", "bar"); + + // Test the version. + test("$Version=1;foo=bar", 1); + test("$Version=0;foo=bar", 0); } + public static void test( String s, int val ) throws Exception { + System.out.println("Processing [" + s + "]"); + Cookies cs=new Cookies(null); + cs.processCookieHeader( s.getBytes(), 0, s.length()); + int num = cs.getCookieCount(); + if (num != 1) + throw new Exception("wrong number of cookies " + num); + ServerCookie co = cs.getCookie(0); + System.out.println("One Cookie: " + co); + if (co.getVersion() != val) + throw new Exception("wrong version " + co.getVersion() + " != " + val); + } public static void test( String s ) throws Exception { System.out.println("Processing [" + s + "]"); Cookies cs=new Cookies(null); Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=637793&r1=637792&r2=637793&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Mon Mar 17 02:03:05 2008 @@ -91,6 +91,13 @@ </update> </changelog> </subsection> + <subsection name="Other"> + <changelog> + <add> + Improve the Tests for unit tests for the cookie issues. (jfclere) + </add> + </changelog> + </subsection> </section> <section name="Tomcat 6.0.16 (remm)"> <subsection name="General"> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]