|
11 | 11 |
|
12 | 12 | import java.util.Collections;
|
13 | 13 | import java.util.List;
|
| 14 | +import java.util.Map; |
14 | 15 |
|
15 | 16 | import static org.junit.Assert.*;
|
16 | 17 |
|
@@ -42,6 +43,9 @@ public class AwsProxyHttpServletRequestTest {
|
42 | 43 | .cookie(FORM_PARAM_TEST, FORM_PARAM_NAME_VALUE).build();
|
43 | 44 | private static final AwsProxyRequest REQUEST_MALFORMED_COOKIE = new AwsProxyRequestBuilder("/hello", "GET")
|
44 | 45 | .header(HttpHeaders.COOKIE, QUERY_STRING_NAME_VALUE).build();
|
| 46 | + private static final AwsProxyRequest REQUEST_MULTIPLE_FORM_AND_QUERY = new AwsProxyRequestBuilder("/hello", "POST") |
| 47 | + .form(FORM_PARAM_NAME, FORM_PARAM_NAME_VALUE) |
| 48 | + .queryString(FORM_PARAM_TEST, QUERY_STRING_NAME_VALUE).build(); |
45 | 49 |
|
46 | 50 | private static final AwsProxyRequest REQUEST_NULL_QUERY_STRING;
|
47 | 51 | static {
|
@@ -177,4 +181,25 @@ public void queryParameters_getParameterNames_notNull() {
|
177 | 181 | assertEquals(1, parameterNames.size());
|
178 | 182 | assertTrue(parameterNames.contains(FORM_PARAM_NAME));
|
179 | 183 | }
|
| 184 | + |
| 185 | + @Test |
| 186 | + public void queryParameter_getParameterMap_avoidDuplicationOnMultipleCalls() { |
| 187 | + HttpServletRequest request = new AwsProxyHttpServletRequest(REQUEST_MULTIPLE_FORM_AND_QUERY, null, null); |
| 188 | + |
| 189 | + Map<String, String[]> params = request.getParameterMap(); |
| 190 | + assertNotNull(params); |
| 191 | + assertEquals(2, params.size()); |
| 192 | + assertNotNull(params.get(FORM_PARAM_NAME)); |
| 193 | + assertEquals(1, params.get(FORM_PARAM_NAME).length); |
| 194 | + assertNotNull(params.get(FORM_PARAM_TEST)); |
| 195 | + assertEquals(1, params.get(FORM_PARAM_TEST).length); |
| 196 | + |
| 197 | + params = request.getParameterMap(); |
| 198 | + assertNotNull(params); |
| 199 | + assertEquals(2, params.size()); |
| 200 | + assertNotNull(params.get(FORM_PARAM_NAME)); |
| 201 | + assertEquals(1, params.get(FORM_PARAM_NAME).length); |
| 202 | + assertNotNull(params.get(FORM_PARAM_TEST)); |
| 203 | + assertEquals(1, params.get(FORM_PARAM_TEST).length); |
| 204 | + } |
180 | 205 | }
|
0 commit comments