View Javadoc

1   package org.apache.struts2.components;
2   
3   import java.util.HashMap;
4   import java.util.Map;
5   
6   import org.apache.struts2.views.jsp.AbstractTagTest;
7   
8   /***
9    * Verifies correct operation of parameter merging.
10   * 
11   * Contributed by: Daniel Uribe
12   */
13  public class URLTest extends AbstractTagTest {
14      public void testIncludeGetDuplicateRequestParams() throws Exception {
15          String body = "";
16  
17          Map parameterMap = new HashMap();
18          parameterMap.put("param", new String[] { "1", "2", "3" });
19  
20          request.setQueryString("param=1&param=2&param=3");
21          request.setScheme("http");
22          request.setParameterMap(parameterMap);
23          URL url = new URL(stack, request, response);
24          url.setIncludeParams(URL.GET);
25          url.setIncludeContext(false);
26          url.setValue("myAction.action");
27          url.setNamespace("");
28  
29          url.start(writer);
30          url.end(writer, body);
31  
32          assertEquals("myAction.action?param=1&param=2&param=3",
33              writer.toString());
34      }
35  
36      public void testIncludeAllDuplicateRequestParams() throws Exception {
37          String body = "";
38  
39          Map parameterMap = new HashMap();
40          parameterMap.put("param", new String[] { "1", "2", "3" });
41  
42          request.setQueryString("param=1&param=2&param=3");
43          request.setScheme("http");
44          request.setParameterMap(parameterMap);
45          URL url = new URL(stack, request, response);
46          url.setIncludeParams(URL.ALL);
47          url.setIncludeContext(false);
48          url.setValue("myAction.action");
49          url.setNamespace("");
50  
51          url.start(writer);
52          url.end(writer, body);
53  
54          assertEquals("myAction.action?param=1&param=2&param=3",
55              writer.toString());
56      }
57  }