craigmcc 01/09/25 16:31:09
Modified: tester/src/bin Tag: tomcat_40_branch tester.xml
tester/web/WEB-INF Tag: tomcat_40_branch web.xml
Added: tester/src/tester/org/apache/tester Tag: tomcat_40_branch
FilterRequest02.java FilterRequest02a.java
FilterResponse04.java FilterResponse04a.java
Log:
Add unit tests which prove that Tomcat 4 is correctly implementing Section
6.2 of the servlet spec. It is legal to use wrappers to implement the
required functionality, but if the application (filter or servlet) wraps
the request and response objects, those application wrapped instances must
be the ones that are passed on to the invoked servlet.
Revision Changes Path
No revision
No revision
1.69.2.1 +52 -0 jakarta-tomcat-4.0/tester/src/bin/tester.xml
Index: tester.xml
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/tester/src/bin/tester.xml,v
retrieving revision 1.69
retrieving revision 1.69.2.1
diff -u -r1.69 -r1.69.2.1
--- tester.xml 2001/09/18 00:08:00 1.69
+++ tester.xml 2001/09/25 23:31:09 1.69.2.1
@@ -381,6 +381,32 @@
inContent="FilterRequest01 Wrapped Stream PASSED"
outContent="FILTERREQUEST01 WRAPPED STREAM PASSED"/>
+ <!-- ========== Servlet Sees Application Wrapper ===================== -->
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/FilterRequest02?wrap=false"
+ outContent="FilterRequest02 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterRequest02?wrap=true"
+ outContent="FilterRequest02 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/FilterRequest02?wrap=false&dispatch=F"
+ outContent="FilterRequest02 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterRequest02?wrap=true&dispatch=F"
+ outContent="FilterRequest02 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/FilterRequest02?wrap=false&dispatch=I"
+ outContent="FilterRequest02 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterRequest02?wrap=true&dispatch=I"
+ outContent="FilterRequest02 PASSED"/>
+
</target>
@@ -426,6 +452,32 @@
debug="${debug}"
status="200"
outContent="FILTERRESPONSE03 PASSED"/>
+
+ <!-- ========== Servlet Sees Application Wrapper ===================== -->
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0"
+ request="${context.path}/FilterResponse04?wrap=false" debug="${debug}"
+ outContent="FilterResponse04 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterResponse04?wrap=true"
+ outContent="FilterResponse04 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/FilterResponse04?wrap=false&dispatch=F"
+ outContent="FilterResponse04 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterResponse04?wrap=true&dispatch=F"
+ outContent="FilterResponse04 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/FilterResponse04?wrap=false&dispatch=I"
+ outContent="FilterResponse04 PASSED"/>
+
+ <tester host="${host}" port="${port}" protocol="HTTP/1.0" debug="${debug}"
+ request="${context.path}/WrappedFilterResponse04?wrap=true&dispatch=I"
+ outContent="FilterResponse04 PASSED"/>
</target>
No revision
No revision
1.1.2.1 +126 -0
jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/Attic/FilterRequest02.java
1.1.2.1 +103 -0
jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/Attic/FilterRequest02a.java
1.1.2.1 +126 -0
jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/Attic/FilterResponse04.java
1.1.2.1 +103 -0
jakarta-tomcat-4.0/tester/src/tester/org/apache/tester/Attic/FilterResponse04a.java
No revision
No revision
1.50.2.1 +60 -0 jakarta-tomcat-4.0/tester/web/WEB-INF/web.xml
Index: web.xml
===================================================================
RCS file: /home/cvs/jakarta-tomcat-4.0/tester/web/WEB-INF/web.xml,v
retrieving revision 1.50
retrieving revision 1.50.2.1
diff -u -r1.50 -r1.50.2.1
--- web.xml 2001/09/18 00:08:00 1.50
+++ web.xml 2001/09/25 23:31:09 1.50.2.1
@@ -149,6 +149,11 @@
</filter-mapping>
<filter-mapping>
+ <filter-name>HttpFilter</filter-name>
+ <url-pattern>/WrappedFilterRequest02</url-pattern>
+ </filter-mapping>
+
+ <filter-mapping>
<filter-name>UpperCaseFilter</filter-name>
<url-pattern>/FilterResponse01</url-pattern>
</filter-mapping>
@@ -195,6 +200,11 @@
<filter-mapping>
<filter-name>HttpFilter</filter-name>
+ <url-pattern>/WrappedFilterResponse04</url-pattern>
+ </filter-mapping>
+
+ <filter-mapping>
+ <filter-name>HttpFilter</filter-name>
<url-pattern>/WrappedForward00</url-pattern>
</filter-mapping>
@@ -557,11 +567,31 @@
</servlet>
<servlet>
+ <servlet-name>FilterRequest02</servlet-name>
+ <servlet-class>org.apache.tester.FilterRequest02</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>FilterRequest02a</servlet-name>
+ <servlet-class>org.apache.tester.FilterRequest02a</servlet-class>
+ </servlet>
+
+ <servlet>
<servlet-name>FilterResponse01</servlet-name>
<servlet-class>org.apache.tester.FilterResponse01</servlet-class>
</servlet>
<servlet>
+ <servlet-name>FilterResponse04</servlet-name>
+ <servlet-class>org.apache.tester.FilterResponse04</servlet-class>
+ </servlet>
+
+ <servlet>
+ <servlet-name>FilterResponse04a</servlet-name>
+ <servlet-class>org.apache.tester.FilterResponse04a</servlet-class>
+ </servlet>
+
+ <servlet>
<servlet-name>Forward00</servlet-name>
<servlet-class>org.apache.tester.Forward00</servlet-class>
</servlet>
@@ -1169,6 +1199,21 @@
</servlet-mapping>
<servlet-mapping>
+ <servlet-name>FilterRequest02</servlet-name>
+ <url-pattern>/FilterRequest02/*</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>FilterRequest02</servlet-name>
+ <url-pattern>/WrappedFilterRequest02/*</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>FilterRequest02a</servlet-name>
+ <url-pattern>/FilterRequest02a</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
<servlet-name>FilterResponse01</servlet-name>
<url-pattern>/FilterResponse01</url-pattern>
</servlet-mapping>
@@ -1176,6 +1221,21 @@
<servlet-mapping>
<servlet-name>FilterResponse01</servlet-name>
<url-pattern>/WrappedFilterResponse01</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>FilterResponse04</servlet-name>
+ <url-pattern>/FilterResponse04/*</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>FilterResponse04</servlet-name>
+ <url-pattern>/WrappedFilterResponse04/*</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>FilterResponse04a</servlet-name>
+ <url-pattern>/FilterResponse04a</url-pattern>
</servlet-mapping>
<servlet-mapping>