public class MockServerHttpResponse
extends org.springframework.http.server.reactive.AbstractServerHttpResponse
AbstractServerHttpResponse
for use in tests without
an actual server.
By default response content is consumed in full upon writing and cached
for subsequent access, however it is also possible to set a custom
writeHandler
.
Constructor and Description |
---|
MockServerHttpResponse() |
MockServerHttpResponse(org.springframework.core.io.buffer.DataBufferFactory dataBufferFactory) |
Modifier and Type | Method and Description |
---|---|
protected void |
applyCookies() |
protected void |
applyHeaders() |
protected void |
applyStatusCode() |
reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer> |
getBody()
Return the response body or an error stream if the body was not set.
|
reactor.core.publisher.Mono<String> |
getBodyAsString()
Aggregate response data and convert to a String using the "Content-Type"
charset or "UTF-8" by default.
|
<T> T |
getNativeResponse() |
reactor.core.publisher.Mono<Void> |
setComplete() |
void |
setWriteHandler(Function<reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer>,reactor.core.publisher.Mono<Void>> writeHandler)
Configure a custom handler to consume the response body.
|
protected reactor.core.publisher.Mono<Void> |
writeAndFlushWithInternal(org.reactivestreams.Publisher<? extends org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer>> body) |
protected reactor.core.publisher.Mono<Void> |
writeWithInternal(org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer> body) |
public MockServerHttpResponse()
public MockServerHttpResponse(org.springframework.core.io.buffer.DataBufferFactory dataBufferFactory)
public void setWriteHandler(Function<reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer>,reactor.core.publisher.Mono<Void>> writeHandler)
By default, response body content is consumed in full and cached for subsequent access in tests. Use this option to take control over how the response body is consumed.
writeHandler
- the write handler to use returning Mono<Void>
when the body has been "written" (i.e. consumed).public <T> T getNativeResponse()
getNativeResponse
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
protected void applyStatusCode()
applyStatusCode
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
protected void applyHeaders()
applyHeaders
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
protected void applyCookies()
applyCookies
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
protected reactor.core.publisher.Mono<Void> writeWithInternal(org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer> body)
writeWithInternal
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
protected reactor.core.publisher.Mono<Void> writeAndFlushWithInternal(org.reactivestreams.Publisher<? extends org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer>> body)
writeAndFlushWithInternal
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
public reactor.core.publisher.Mono<Void> setComplete()
setComplete
in interface org.springframework.http.ReactiveHttpOutputMessage
setComplete
in class org.springframework.http.server.reactive.AbstractServerHttpResponse
public reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer> getBody()
public reactor.core.publisher.Mono<String> getBodyAsString()