Skip to content

Commit

Permalink
fix: Request Parameters not picked up for v1 payload format with mult…
Browse files Browse the repository at this point in the history
…ivalue headers enabled (#1256)
  • Loading branch information
deki committed Feb 4, 2025
1 parent 695dd06 commit f37fa4e
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ private static HttpServletRequest generateRequest1(String request, Context lambd
if (v1Request.getMultiValueQueryStringParameters() != null) {
MultiValueMapAdapter<String, String> queryStringParameters = new MultiValueMapAdapter(v1Request.getMultiValueQueryStringParameters());
queryStringParameters.forEach((k, v) -> {
httpRequest.setParameter(k, v.toArray(new String[2]));
httpRequest.setParameter(k, v.toArray(new String[0]));
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ private static void assertRequest(HttpServletRequest request) {
assertEquals("/async", request.getRequestURI());
assertNotNull(request.getServletContext());
// parameter handling for 2.0 requests is currently not spec compliant and to be fixed in future version
// see also GitHub issue
// see also GitHub issue https://github.com/aws/serverless-java-container/issues/1278
if (!(request.getAttribute(RequestReader.HTTP_API_EVENT_PROPERTY) instanceof HttpApiV2ProxyRequest)) {
assertEquals("value1", request.getParameter("parameter1"));
assertArrayEquals(new String[]{"value1", "value2"}, request.getParameterValues("parameter1"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -215,10 +215,10 @@ public void validateComplesrequest(String jsonEvent) throws Exception {
handler.handleRequest(targetStream, output, null);
Map result = mapper.readValue(output.toString(StandardCharsets.UTF_8), Map.class);
assertEquals(200, result.get("statusCode"));
String[] respponseBody = ((String) result.get("body")).split("/");
assertEquals("male", respponseBody[0]);
assertEquals("24", respponseBody[1]);
assertEquals("Ricky", respponseBody[2]);
String[] responseBody = ((String) result.get("body")).split("/");
assertEquals("male", responseBody[0]);
assertEquals("24", responseBody[1]);
assertEquals("Ricky", responseBody[2]);
}

@MethodSource("data")
Expand Down

0 comments on commit f37fa4e

Please sign in to comment.