Minor refactoring in AbstractNamedValueArgumentResolver
Expose MethodParameter information in abstract protected method that adds the HTTP request value. See gh-29420
This commit is contained in:
@@ -22,8 +22,11 @@ import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.ValueSource;
|
||||
|
||||
import org.springframework.http.HttpEntity;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpMethod;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.util.MultiValueMap;
|
||||
import org.springframework.web.util.UriComponentsBuilder;
|
||||
|
||||
import static java.nio.charset.StandardCharsets.UTF_8;
|
||||
@@ -106,4 +109,21 @@ public class HttpRequestValuesTests {
|
||||
.isEqualTo("/path?param1=1st%20value¶m2=2nd%20value%20A¶m2=2nd%20value%20B");
|
||||
}
|
||||
|
||||
@Test
|
||||
void requestPart() {
|
||||
HttpHeaders entityHeaders = new HttpHeaders();
|
||||
entityHeaders.add("foo", "bar");
|
||||
HttpEntity<String> entity = new HttpEntity<>("body", entityHeaders);
|
||||
|
||||
HttpRequestValues requestValues = HttpRequestValues.builder()
|
||||
.addRequestPart("form field", "form value")
|
||||
.addRequestPart("entity", entity)
|
||||
.build();
|
||||
|
||||
MultiValueMap<String, HttpEntity<?>> map = (MultiValueMap<String, HttpEntity<?>>) requestValues.getBodyValue();
|
||||
assertThat(map).hasSize(2);
|
||||
assertThat(map.getFirst("form field").getBody()).isEqualTo("form value");
|
||||
assertThat(map.getFirst("entity")).isEqualTo(entity);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -240,7 +240,7 @@ class NamedValueArgumentResolverTests {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void addRequestValue(String name, Object value, HttpRequestValues.Builder requestValues) {
|
||||
protected void addRequestValue(String name, Object value, MethodParameter parameter, HttpRequestValues.Builder requestValues) {
|
||||
this.testValues.add(name, (String) value);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user