Merge branch '6.1.x'

This commit is contained in:
rstoyanchev
2024-04-09 18:25:11 +01:00
6 changed files with 56 additions and 9 deletions

View File

@@ -53,7 +53,7 @@ class RequestParamMethodArgumentResolverTests {
private BindingContext bindContext;
private ResolvableMethod testMethod = ResolvableMethod.on(getClass()).named("handle").build();
private final ResolvableMethod testMethod = ResolvableMethod.on(getClass()).named("handle").build();
@BeforeEach
@@ -130,6 +130,16 @@ class RequestParamMethodArgumentResolverTests {
assertThat((String[]) result).isEqualTo(new String[] {"foo", "bar"});
}
@Test // gh-32577
void resolveStringArrayWithEmptyArraySuffix() {
MethodParameter param = this.testMethod.annotPresent(RequestParam.class).arg(String[].class);
MockServerHttpRequest request = MockServerHttpRequest.get("/path?name[]=foo&name[]=bar").build();
Object result = resolve(param, MockServerWebExchange.from(request));
boolean condition = result instanceof String[];
assertThat(condition).isTrue();
assertThat((String[]) result).isEqualTo(new String[] {"foo", "bar"});
}
@Test
void resolveDefaultValue() {
MethodParameter param = this.testMethod.annot(requestParam().notRequired("bar")).arg(String.class);