Revert "Do not read Map in FormHttpMessageConverter"

This reverts commit 726ac9110c and
80faa94afc.

See gh-32826
This commit is contained in:
Arjen Poutsma
2024-06-06 12:25:20 +02:00
parent c127421e38
commit 859b97ce05
5 changed files with 47 additions and 174 deletions

View File

@@ -174,13 +174,12 @@ public class ContentRequestMatchers {
return formData(multiValueMap, false);
}
@SuppressWarnings("unchecked")
private RequestMatcher formData(MultiValueMap<String, String> expectedMap, boolean containsExactly) {
return request -> {
MockClientHttpRequest mockRequest = (MockClientHttpRequest) request;
MockHttpInputMessage message = new MockHttpInputMessage(mockRequest.getBodyAsBytes());
message.getHeaders().putAll(mockRequest.getHeaders());
MultiValueMap<String, String> actualMap = (MultiValueMap<String, String>) new FormHttpMessageConverter().read(null, message);
MultiValueMap<String, String> actualMap = new FormHttpMessageConverter().read(null, message);
if (containsExactly) {
assertEquals("Form data", expectedMap, actualMap);
}

View File

@@ -902,7 +902,7 @@ public abstract class AbstractMockHttpServletRequestBuilder<B extends AbstractMo
};
try {
return (MultiValueMap<String, String>) new FormHttpMessageConverter().read(null, message);
return new FormHttpMessageConverter().read(null, message);
}
catch (IOException ex) {
throw new IllegalStateException("Failed to parse form data in request body", ex);