craigmcc 2003/02/08 14:12:09
Modified: src/share/org/apache/struts/util RequestUtils.java
src/test/org/apache/struts/util TestRequestUtils.java
Log:
Unit tests for the current behavior of RequestUtils.pageURL(). We deliberately
do *not* do slash prepending here -- the input value must start with a slash.
(Doing '/' prepending in forwardURL() was a bad idea IMHO, but apparently it
was needed for Tiles, and now it's too late).
Revision Changes Path
1.84 +6 -5
jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java
Index: RequestUtils.java
===================================================================
RCS file:
/home/cvs/jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -r1.83 -r1.84
--- RequestUtils.java 8 Feb 2003 21:20:19 -0000 1.83
+++ RequestUtils.java 8 Feb 2003 22:12:09 -0000 1.84
@@ -1458,7 +1458,8 @@
*
* @param request The servlet request we are processing
* @param page The module-relative URL to be substituted in
- * to the <code>pagePattern</code> pattern for the current module.
+ * to the <code>pagePattern</code> pattern for the current module
+ * (<strong>MUST</strong> start with a slash)
* @return context-relative URL
* @since Struts 1.1b2
*/
1.17 +64 -4
jakarta-struts/src/test/org/apache/struts/util/TestRequestUtils.java
Index: TestRequestUtils.java
===================================================================
RCS file:
/home/cvs/jakarta-struts/src/test/org/apache/struts/util/TestRequestUtils.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- TestRequestUtils.java 8 Feb 2003 21:01:52 -0000 1.16
+++ TestRequestUtils.java 8 Feb 2003 22:12:09 -0000 1.17
@@ -1403,6 +1403,66 @@
}
+ // -------------------------------------------------------------- pageURL()
+
+
+ // Default module (default pagePattern)
+ public void testPageURL1() {
+
+ request.setAttribute(Action.APPLICATION_KEY, appConfig);
+ request.setPathElements("/myapp", "/action.do", null, null);
+ String page = null;
+ String result = null;
+
+ // Straight substitution
+ page = "/mypages/index.jsp";
+ result = RequestUtils.pageURL(request, page);
+ assertNotNull("straight sub found", result);
+ assertEquals("straight sub value",
+ "/mypages/index.jsp", result);
+
+
+ }
+
+
+ // Second module (default pagePattern)
+ public void testPageURL2() {
+
+ request.setAttribute(Action.APPLICATION_KEY, appConfig2);
+ request.setPathElements("/myapp", "/2/action.do", null, null);
+ String page = null;
+ String result = null;
+
+ // Straight substitution
+ page = "/mypages/index.jsp";
+ result = RequestUtils.pageURL(request, page);
+ assertNotNull("straight sub found", result);
+ assertEquals("straight sub value",
+ "/2/mypages/index.jsp", result);
+
+
+ }
+
+
+ // Third module (custom pagePattern)
+ public void testPageURL3() {
+
+ request.setAttribute(Action.APPLICATION_KEY, appConfig3);
+ request.setPathElements("/myapp", "/3/action.do", null, null);
+ String page = null;
+ String result = null;
+
+ // Straight substitution
+ page = "/mypages/index.jsp";
+ result = RequestUtils.pageURL(request, page);
+ assertNotNull("straight sub found", result);
+ assertEquals("straight sub value",
+ "/paging/3/mypages/index.jsp", result);
+
+
+ }
+
+
// ----------------------------------------------------------- requestURL()
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]