Polishing in ResponseBodyEmitterReturnValueHandler

See gh-33194
This commit is contained in:
rstoyanchev
2024-08-01 16:23:35 +03:00
parent f3ab3905b8
commit 184bb7c23c
4 changed files with 61 additions and 47 deletions

View File

@@ -130,7 +130,7 @@ class ReactiveTypeHandlerTests {
MediaType.parseMediaType("application/*+x-ndjson"),
MediaType.parseMediaType("application/vnd.myapp.v1+x-ndjson"));
assertThat(ReactiveTypeHandler.findConcreteStreamingMediaType(accept))
assertThat(ReactiveTypeHandler.findConcreteJsonStreamMediaType(accept))
.isEqualTo(MediaType.APPLICATION_NDJSON);
}
@@ -142,7 +142,7 @@ class ReactiveTypeHandlerTests {
MediaType.parseMediaType("application/*+x-ndjson"),
MediaType.APPLICATION_NDJSON);
assertThat(ReactiveTypeHandler.findConcreteStreamingMediaType(accept))
assertThat(ReactiveTypeHandler.findConcreteJsonStreamMediaType(accept))
.hasToString("application/vnd.myapp.v1+x-ndjson");
}
@@ -154,7 +154,7 @@ class ReactiveTypeHandlerTests {
MediaType.parseMediaType("application/*+x-ndjson"),
MediaType.parseMediaType("application/vnd.myapp.v1+x-ndjson"));
assertThat(ReactiveTypeHandler.findConcreteStreamingMediaType(accept))
assertThat(ReactiveTypeHandler.findConcreteJsonStreamMediaType(accept))
.isEqualTo(MediaType.APPLICATION_NDJSON);
}
@@ -167,7 +167,7 @@ class ReactiveTypeHandlerTests {
MediaType.parseMediaType("application/*+x-ndjson"),
MediaType.parseMediaType("application/vnd.myapp.v1+x-ndjson"));
assertThat(ReactiveTypeHandler.findConcreteStreamingMediaType(accept))
assertThat(ReactiveTypeHandler.findConcreteJsonStreamMediaType(accept))
.isEqualTo(MediaType.APPLICATION_STREAM_JSON);
}

View File

@@ -62,14 +62,14 @@ import static org.springframework.web.testfixture.method.ResolvableMethod.on;
*/
class ResponseBodyEmitterReturnValueHandlerTests {
private ResponseBodyEmitterReturnValueHandler handler =
private final ResponseBodyEmitterReturnValueHandler handler =
new ResponseBodyEmitterReturnValueHandler(List.of(new MappingJackson2HttpMessageConverter()));
private MockHttpServletRequest request = new MockHttpServletRequest();
private final MockHttpServletRequest request = new MockHttpServletRequest();
private MockHttpServletResponse response = new MockHttpServletResponse();
private final MockHttpServletResponse response = new MockHttpServletResponse();
private NativeWebRequest webRequest = new ServletWebRequest(this.request, this.response);
private final NativeWebRequest webRequest = new ServletWebRequest(this.request, this.response);
private final ModelAndViewContainer mavContainer = new ModelAndViewContainer();
@@ -93,12 +93,15 @@ class ResponseBodyEmitterReturnValueHandlerTests {
assertThat(this.handler.supportsReturnType(
on(TestController.class).resolveReturnType(ResponseEntity.class, ResponseBodyEmitter.class))).isTrue();
assertThat(this.handler.supportsReturnType(
on(TestController.class).resolveReturnType(Flux.class, String.class))).isTrue();
ResolvableType stringFlux = forClassWithGenerics(Flux.class, String.class);
assertThat(this.handler.supportsReturnType(
on(TestController.class).resolveReturnType(forClassWithGenerics(ResponseEntity.class,
forClassWithGenerics(Flux.class, String.class))))).isTrue();
on(TestController.class).resolveReturnType(stringFlux))).isTrue();
ResolvableType responseEntityStringFlux = forClassWithGenerics(ResponseEntity.class, stringFlux);
assertThat(this.handler.supportsReturnType(
on(TestController.class).resolveReturnType(responseEntityStringFlux))).isTrue();
}
@Test