|
22 | 22 | import java.net.URL;
|
23 | 23 | import java.nio.charset.StandardCharsets;
|
24 | 24 | import java.util.ArrayList;
|
| 25 | +import java.util.Collections; |
25 | 26 | import java.util.List;
|
26 | 27 |
|
27 | 28 | import org.apache.http.auth.BasicUserPrincipal;
|
@@ -394,6 +395,43 @@ public void getParametersFromUrlEncodedBodyPost() throws Exception {
|
394 | 395 | assertEquals("u", request.getParameters().get(0).getValue());
|
395 | 396 | }
|
396 | 397 |
|
| 398 | + /** |
| 399 | + * @throws Exception if the test fails |
| 400 | + */ |
| 401 | + @Test |
| 402 | + public void getParametersFromQueryAndUrlEncodedBodyPost() throws Exception { |
| 403 | + final URL url = new URL("http://localhost/test?a=b"); |
| 404 | + final WebRequest request = new WebRequest(url); |
| 405 | + request.setHttpMethod(HttpMethod.POST); |
| 406 | + request.setEncodingType(FormEncodingType.URL_ENCODED); |
| 407 | + request.setRequestBody("c=d"); |
| 408 | + |
| 409 | + final List<NameValuePair> parameters = request.getParameters(); |
| 410 | + |
| 411 | + assertEquals(2, parameters.size()); |
| 412 | + assertEquals("a", parameters.get(0).getName()); |
| 413 | + assertEquals("b", parameters.get(0).getValue()); |
| 414 | + assertEquals("c", parameters.get(1).getName()); |
| 415 | + assertEquals("d", parameters.get(1).getValue()); |
| 416 | + } |
| 417 | + |
| 418 | + @Test |
| 419 | + public void getParametersFromQueryAndUrlEncodedBodyPostWhenEncodingTypeIsMultipart() throws Exception { |
| 420 | + final URL url = new URL("http://localhost/test?a=b"); |
| 421 | + final WebRequest request = new WebRequest(url); |
| 422 | + request.setHttpMethod(HttpMethod.POST); |
| 423 | + request.setEncodingType(FormEncodingType.MULTIPART); |
| 424 | + request.setRequestParameters(Collections.singletonList(new NameValuePair("c", "d"))); |
| 425 | + |
| 426 | + final List<NameValuePair> parameters = request.getParameters(); |
| 427 | + |
| 428 | + assertEquals(2, parameters.size()); |
| 429 | + assertEquals("a", parameters.get(0).getName()); |
| 430 | + assertEquals("b", parameters.get(0).getValue()); |
| 431 | + assertEquals("c", parameters.get(1).getName()); |
| 432 | + assertEquals("d", parameters.get(1).getValue()); |
| 433 | + } |
| 434 | + |
397 | 435 | /**
|
398 | 436 | * @throws Exception if the test fails
|
399 | 437 | */
|
|
0 commit comments