Merge branch '5.3.x'
This commit is contained in:
commit
f57004db2c
|
@ -361,9 +361,7 @@ class DefaultServerResponseBuilder implements ServerResponse.BodyBuilder {
|
||||||
|
|
||||||
private static <K,V> void copy(MultiValueMap<K,V> src, MultiValueMap<K,V> dst) {
|
private static <K,V> void copy(MultiValueMap<K,V> src, MultiValueMap<K,V> dst) {
|
||||||
if (!src.isEmpty()) {
|
if (!src.isEmpty()) {
|
||||||
src.entrySet().stream()
|
dst.putAll(src);
|
||||||
.filter(entry -> !dst.containsKey(entry.getKey()))
|
|
||||||
.forEach(entry -> dst.put(entry.getKey(), entry.getValue()));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -320,6 +320,23 @@ public class DefaultServerResponseBuilderTests {
|
||||||
assertThat(serverResponse.block().cookies().isEmpty()).isFalse();
|
assertThat(serverResponse.block().cookies().isEmpty()).isFalse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void overwriteHeaders() {
|
||||||
|
ServerResponse serverResponse =
|
||||||
|
ServerResponse.ok().headers(headers -> headers.set("Foo", "Bar")).build().block();
|
||||||
|
assertThat(serverResponse).isNotNull();
|
||||||
|
|
||||||
|
MockServerWebExchange mockExchange = MockServerWebExchange
|
||||||
|
.builder(MockServerHttpRequest.get("https://example.org"))
|
||||||
|
.build();
|
||||||
|
MockServerHttpResponse response = mockExchange.getResponse();
|
||||||
|
response.getHeaders().set("Foo", "Baz");
|
||||||
|
|
||||||
|
serverResponse.writeTo(mockExchange, EMPTY_CONTEXT).block();
|
||||||
|
|
||||||
|
assertThat(response.getHeaders().getFirst("Foo")).isEqualTo("Bar");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void build() {
|
public void build() {
|
||||||
|
|
Loading…
Reference in New Issue