Merge branch '6.1.x'
# Conflicts: # spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java # spring-web/src/test/java/org/springframework/web/method/annotation/RequestParamMethodArgumentResolverTests.java # spring-webflux/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestParamMethodArgumentResolverTests.java
This commit is contained in:
@@ -124,6 +124,7 @@ class ServletServerHttpRequestTests {
|
||||
assertThat(headers).as("No HttpHeaders returned").isNotNull();
|
||||
assertThat(headers.containsKey(headerName)).as("Invalid headers returned").isTrue();
|
||||
List<String> headerValues = headers.get(headerName);
|
||||
assertThat(headerValues).as("No header values returned").isNotNull();
|
||||
assertThat(headerValues.size()).as("Invalid header values returned").isEqualTo(2);
|
||||
assertThat(headerValues.contains(headerValue1)).as("Invalid header values returned").isTrue();
|
||||
assertThat(headerValues.contains(headerValue2)).as("Invalid header values returned").isTrue();
|
||||
@@ -150,7 +151,7 @@ class ServletServerHttpRequestTests {
|
||||
assertThat(headers.getContentType()).isNull();
|
||||
}
|
||||
|
||||
@Test // gh-27957
|
||||
@Test // gh-27957
|
||||
void getHeadersWithWildcardContentType() {
|
||||
mockRequest.setContentType("*/*");
|
||||
mockRequest.removeHeader("Content-Type");
|
||||
@@ -166,7 +167,7 @@ class ServletServerHttpRequestTests {
|
||||
assertThat(result).as("Invalid content returned").isEqualTo(content);
|
||||
}
|
||||
|
||||
@Test // gh-13318
|
||||
@Test // gh-13318
|
||||
void getFormBody() throws IOException {
|
||||
mockRequest.setContentType("application/x-www-form-urlencoded; charset=UTF-8");
|
||||
mockRequest.setMethod("POST");
|
||||
@@ -189,7 +190,7 @@ class ServletServerHttpRequestTests {
|
||||
assertThat(result).as("Invalid content returned").isEqualTo(content);
|
||||
}
|
||||
|
||||
@Test // gh-31327
|
||||
@Test // gh-31327
|
||||
void getFormBodyWhenQueryParamsAlsoPresent() throws IOException {
|
||||
mockRequest.setContentType("application/x-www-form-urlencoded; charset=UTF-8");
|
||||
mockRequest.setMethod("POST");
|
||||
@@ -203,7 +204,7 @@ class ServletServerHttpRequestTests {
|
||||
assertThat(result).as("Invalid content returned").isEqualTo(content);
|
||||
}
|
||||
|
||||
@Test // gh-32471
|
||||
@Test // gh-32471
|
||||
void getFormBodyWhenNotEncodedCharactersPresent() throws IOException {
|
||||
mockRequest.setContentType("application/x-www-form-urlencoded; charset=UTF-8");
|
||||
mockRequest.setMethod("POST");
|
||||
|
||||
@@ -186,7 +186,7 @@ class RequestParamMethodArgumentResolverTests {
|
||||
assertThat(result).asInstanceOf(array(String[].class)).containsExactly(expected);
|
||||
}
|
||||
|
||||
@Test // gh-32577
|
||||
@Test // gh-32577
|
||||
void resolveStringArrayWithEmptyArraySuffix() throws Exception {
|
||||
String[] expected = new String[] {"foo", "bar"};
|
||||
request.addParameter("name[]", expected[0]);
|
||||
@@ -221,7 +221,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(List.class, MultipartFile.class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).asInstanceOf(LIST).containsExactly(expected1, expected2);
|
||||
}
|
||||
|
||||
@@ -248,7 +247,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(MultipartFile[].class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).asInstanceOf(array(MultipartFile[].class)).containsExactly(expected1, expected2);
|
||||
}
|
||||
|
||||
@@ -274,7 +272,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(Part.class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).asInstanceOf(type(Part.class)).isEqualTo(expected);
|
||||
}
|
||||
|
||||
@@ -292,7 +289,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(List.class, Part.class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).asInstanceOf(LIST).containsExactly(expected1, expected2);
|
||||
}
|
||||
|
||||
@@ -323,7 +319,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(Part[].class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).asInstanceOf(array(Part[].class)).containsExactly(expected1, expected2);
|
||||
}
|
||||
|
||||
@@ -442,7 +437,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
WebDataBinderFactory binderFactory = mock();
|
||||
given(binderFactory.createBinder(webRequest, null, "stringNotAnnot")).willReturn(binder);
|
||||
|
||||
request.addParameter("stringNotAnnot", "");
|
||||
|
||||
MethodParameter param = this.testMethod.annotNotPresent(RequestParam.class).arg(String.class);
|
||||
@@ -456,7 +450,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
WebDataBinderFactory binderFactory = mock();
|
||||
given(binderFactory.createBinder(webRequest, null, "booleanParam")).willReturn(binder);
|
||||
|
||||
request.addParameter("booleanParam", " ");
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(Boolean.class);
|
||||
@@ -471,7 +464,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
WebDataBinderFactory binderFactory = mock();
|
||||
given(binderFactory.createBinder(webRequest, null, "name")).willReturn(binder);
|
||||
|
||||
request.addParameter("name", "");
|
||||
|
||||
MethodParameter param = this.testMethod.annot(requestParam().notRequired()).arg(String.class);
|
||||
@@ -479,14 +471,13 @@ class RequestParamMethodArgumentResolverTests {
|
||||
assertThat(arg).isNull();
|
||||
}
|
||||
|
||||
@Test // gh-29550
|
||||
@Test // gh-29550
|
||||
public void missingRequestParamEmptyValueNotRequiredWithDefaultValue() throws Exception {
|
||||
WebDataBinder binder = new WebRequestDataBinder(null);
|
||||
binder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
|
||||
|
||||
WebDataBinderFactory binderFactory = mock();
|
||||
given(binderFactory.createBinder(webRequest, null, "name")).willReturn(binder);
|
||||
|
||||
request.addParameter("name", " ");
|
||||
|
||||
MethodParameter param = this.testMethod.annot(requestParam().notRequired("bar")).arg(String.class);
|
||||
@@ -499,7 +490,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
request.setParameter("stringNotAnnot", "plainValue");
|
||||
MethodParameter param = this.testMethod.annotNotPresent(RequestParam.class).arg(String.class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, null);
|
||||
|
||||
assertThat(result).isEqualTo("plainValue");
|
||||
}
|
||||
|
||||
@@ -646,7 +636,6 @@ class RequestParamMethodArgumentResolverTests {
|
||||
|
||||
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(Optional.class, MultipartFile.class);
|
||||
Object result = resolver.resolveArgument(param, null, webRequest, binderFactory);
|
||||
|
||||
assertThat(result).asInstanceOf(optional(MultipartFile.class)).contains(expected);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user