Search in sources :

Example 11 with DecoderHttpMessageReader

use of org.springframework.http.codec.DecoderHttpMessageReader in project spring-framework by spring-projects.

the class DefaultServerRequestTests method bodyToFlux.

@Test
public void bodyToFlux() throws Exception {
    DefaultDataBufferFactory factory = new DefaultDataBufferFactory();
    DefaultDataBuffer dataBuffer = factory.wrap(ByteBuffer.wrap("foo".getBytes(StandardCharsets.UTF_8)));
    Flux<DataBuffer> body = Flux.just(dataBuffer);
    HttpHeaders httpHeaders = new HttpHeaders();
    httpHeaders.setContentType(MediaType.TEXT_PLAIN);
    when(mockRequest.getHeaders()).thenReturn(httpHeaders);
    when(mockRequest.getBody()).thenReturn(body);
    Set<HttpMessageReader<?>> messageReaders = Collections.singleton(new DecoderHttpMessageReader<String>(new StringDecoder()));
    when(mockHandlerStrategies.messageReaders()).thenReturn(messageReaders::stream);
    Flux<String> resultFlux = defaultRequest.bodyToFlux(String.class);
    Mono<List<String>> result = resultFlux.collectList();
    assertEquals(Collections.singletonList("foo"), result.block());
}
Also used : DefaultDataBuffer(org.springframework.core.io.buffer.DefaultDataBuffer) HttpHeaders(org.springframework.http.HttpHeaders) StringDecoder(org.springframework.core.codec.StringDecoder) HttpMessageReader(org.springframework.http.codec.HttpMessageReader) DecoderHttpMessageReader(org.springframework.http.codec.DecoderHttpMessageReader) DefaultDataBufferFactory(org.springframework.core.io.buffer.DefaultDataBufferFactory) List(java.util.List) DefaultDataBuffer(org.springframework.core.io.buffer.DefaultDataBuffer) DataBuffer(org.springframework.core.io.buffer.DataBuffer) Test(org.junit.Test)

Aggregations

StringDecoder (org.springframework.core.codec.StringDecoder)11 DecoderHttpMessageReader (org.springframework.http.codec.DecoderHttpMessageReader)11 HttpMessageReader (org.springframework.http.codec.HttpMessageReader)10 Test (org.junit.Test)8 HttpHeaders (org.springframework.http.HttpHeaders)8 DataBuffer (org.springframework.core.io.buffer.DataBuffer)6 DefaultDataBuffer (org.springframework.core.io.buffer.DefaultDataBuffer)6 DefaultDataBufferFactory (org.springframework.core.io.buffer.DefaultDataBufferFactory)6 ArrayList (java.util.ArrayList)2 List (java.util.List)2 ByteBufferDecoder (org.springframework.core.codec.ByteBufferDecoder)2 Jackson2JsonDecoder (org.springframework.http.codec.json.Jackson2JsonDecoder)2 Jaxb2XmlDecoder (org.springframework.http.codec.xml.Jaxb2XmlDecoder)2 HashMap (java.util.HashMap)1 Map (java.util.Map)1 Supplier (java.util.function.Supplier)1 Before (org.junit.Before)1 ReactiveAdapterRegistry (org.springframework.core.ReactiveAdapterRegistry)1 ByteArrayDecoder (org.springframework.core.codec.ByteArrayDecoder)1 DataBufferDecoder (org.springframework.core.codec.DataBufferDecoder)1