Migrate tests to AssertJ

Mostly thanks to IDEA's plugin: https://plugins.jetbrains.com/plugin/10345-assertions2assertj
There is still a lot of work to do when complex and composite matchers are used.

* Add `awaitility` dependency and deprecate `EventuallyMatcher` in favor
of `awaitility`
* Remove Hamcrest from dependencies and disable JUnit & Hamcrest
static imports to encourage to use only AssertJ
* Migrate JUnit assumptions in rules to AssertJ's assumptions
* Deprecate some custom matchers in favor of existing in Hamcrest
after upgrading the last to version `2.1`
* Replace `ExpectedException` rules with `assertThatThrownBy()`
* Mention `MessagePredicate` in the `testing.adoc`
This commit is contained in:
Artem Bilan
2019-02-20 12:28:44 -05:00
parent b62c2a8fb3
commit 622d42c71a
916 changed files with 19714 additions and 21769 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2018 the original author or authors.
* Copyright 2018-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,14 +16,7 @@
package org.springframework.integration.webflux.config;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNotSame;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.Map;
@@ -81,54 +74,57 @@ public class WebFluxInboundChannelAdapterParserTests {
@Test
public void reactiveMinimalConfig() {
DirectFieldAccessor endpointAccessor = new DirectFieldAccessor(this.reactiveMinimalConfig);
assertSame(this.requests, endpointAccessor.getPropertyValue("requestChannel"));
assertTrue((boolean) endpointAccessor.getPropertyValue("autoStartup"));
assertFalse((boolean) endpointAccessor.getPropertyValue("expectReply"));
assertNull(endpointAccessor.getPropertyValue("statusCodeExpression"));
assertNull(endpointAccessor.getPropertyValue("payloadExpression"));
assertNull(endpointAccessor.getPropertyValue("headerExpressions"));
assertNull(endpointAccessor.getPropertyValue("crossOrigin"));
assertNull(endpointAccessor.getPropertyValue("requestPayloadType"));
assertThat(endpointAccessor.getPropertyValue("requestChannel")).isSameAs(this.requests);
assertThat((boolean) endpointAccessor.getPropertyValue("autoStartup")).isTrue();
assertThat((boolean) endpointAccessor.getPropertyValue("expectReply")).isFalse();
assertThat(endpointAccessor.getPropertyValue("statusCodeExpression")).isNull();
assertThat(endpointAccessor.getPropertyValue("payloadExpression")).isNull();
assertThat(endpointAccessor.getPropertyValue("headerExpressions")).isNull();
assertThat(endpointAccessor.getPropertyValue("crossOrigin")).isNull();
assertThat(endpointAccessor.getPropertyValue("requestPayloadType")).isNull();
assertNotSame(this.headerMapper, endpointAccessor.getPropertyValue("headerMapper"));
assertNotSame(this.serverCodecConfigurer, endpointAccessor.getPropertyValue("codecConfigurer"));
assertNotSame(this.requestedContentTypeResolver, endpointAccessor.getPropertyValue("requestedContentTypeResolver"));
assertNotSame(this.reactiveAdapterRegistry, endpointAccessor.getPropertyValue("adapterRegistry"));
assertThat(endpointAccessor.getPropertyValue("headerMapper")).isNotSameAs(this.headerMapper);
assertThat(endpointAccessor.getPropertyValue("codecConfigurer")).isNotSameAs(this.serverCodecConfigurer);
assertThat(endpointAccessor.getPropertyValue("requestedContentTypeResolver"))
.isNotSameAs(this.requestedContentTypeResolver);
assertThat(endpointAccessor.getPropertyValue("adapterRegistry")).isNotSameAs(this.reactiveAdapterRegistry);
}
@Test
@SuppressWarnings("unchecked")
public void reactiveFullConfig() {
DirectFieldAccessor endpointAccessor = new DirectFieldAccessor(this.reactiveFullConfig);
assertSame(this.requests, endpointAccessor.getPropertyValue("requestChannel"));
assertNotNull(endpointAccessor.getPropertyValue("errorChannel"));
assertFalse((boolean) endpointAccessor.getPropertyValue("autoStartup"));
assertEquals(101, endpointAccessor.getPropertyValue("phase"));
assertFalse((boolean) endpointAccessor.getPropertyValue("expectReply"));
assertThat(endpointAccessor.getPropertyValue("requestChannel")).isSameAs(this.requests);
assertThat(endpointAccessor.getPropertyValue("errorChannel")).isNotNull();
assertThat((boolean) endpointAccessor.getPropertyValue("autoStartup")).isFalse();
assertThat(endpointAccessor.getPropertyValue("phase")).isEqualTo(101);
assertThat((boolean) endpointAccessor.getPropertyValue("expectReply")).isFalse();
assertEquals("'202'",
((SpelExpression) endpointAccessor.getPropertyValue("statusCodeExpression")).getExpressionString());
assertThat(((SpelExpression) endpointAccessor.getPropertyValue("statusCodeExpression")).getExpressionString())
.isEqualTo("'202'");
assertEquals("payload",
((SpelExpression) endpointAccessor.getPropertyValue("payloadExpression")).getExpressionString());
assertThat(((SpelExpression) endpointAccessor.getPropertyValue("payloadExpression")).getExpressionString())
.isEqualTo("payload");
Map<String, Expression> headerExpressions =
(Map<String, Expression>) endpointAccessor.getPropertyValue("headerExpressions");
assertTrue(headerExpressions.containsKey("foo"));
assertThat(headerExpressions.containsKey("foo")).isTrue();
assertEquals("foo", headerExpressions.get("foo").getValue());
assertThat(headerExpressions.get("foo").getValue()).isEqualTo("foo");
CrossOrigin crossOrigin = (CrossOrigin) endpointAccessor.getPropertyValue("crossOrigin");
assertNotNull(crossOrigin);
assertArrayEquals(new String[] { "foo" }, crossOrigin.getOrigin());
assertThat(crossOrigin).isNotNull();
assertThat(crossOrigin.getOrigin()).isEqualTo(new String[] { "foo" });
assertEquals(ResolvableType.forClass(byte[].class), endpointAccessor.getPropertyValue("requestPayloadType"));
assertThat(endpointAccessor.getPropertyValue("requestPayloadType"))
.isEqualTo(ResolvableType.forClass(byte[].class));
assertSame(this.headerMapper, endpointAccessor.getPropertyValue("headerMapper"));
assertSame(this.serverCodecConfigurer, endpointAccessor.getPropertyValue("codecConfigurer"));
assertSame(this.requestedContentTypeResolver, endpointAccessor.getPropertyValue("requestedContentTypeResolver"));
assertSame(this.reactiveAdapterRegistry, endpointAccessor.getPropertyValue("adapterRegistry"));
assertThat(endpointAccessor.getPropertyValue("headerMapper")).isSameAs(this.headerMapper);
assertThat(endpointAccessor.getPropertyValue("codecConfigurer")).isSameAs(this.serverCodecConfigurer);
assertThat(endpointAccessor.getPropertyValue("requestedContentTypeResolver"))
.isSameAs(this.requestedContentTypeResolver);
assertThat(endpointAccessor.getPropertyValue("adapterRegistry")).isSameAs(this.reactiveAdapterRegistry);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2018 the original author or authors.
* Copyright 2018-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,14 +16,7 @@
package org.springframework.integration.webflux.config;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNotSame;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.Map;
@@ -81,54 +74,57 @@ public class WebFluxInboundGatewayParserTests {
@Test
public void reactiveMinimalConfig() {
DirectFieldAccessor endpointAccessor = new DirectFieldAccessor(this.reactiveMinimalConfig);
assertSame(this.requests, endpointAccessor.getPropertyValue("requestChannel"));
assertTrue((boolean) endpointAccessor.getPropertyValue("autoStartup"));
assertTrue((boolean) endpointAccessor.getPropertyValue("expectReply"));
assertNull(endpointAccessor.getPropertyValue("statusCodeExpression"));
assertNull(endpointAccessor.getPropertyValue("payloadExpression"));
assertNull(endpointAccessor.getPropertyValue("headerExpressions"));
assertNull(endpointAccessor.getPropertyValue("crossOrigin"));
assertNull(endpointAccessor.getPropertyValue("requestPayloadType"));
assertThat(endpointAccessor.getPropertyValue("requestChannel")).isSameAs(this.requests);
assertThat((boolean) endpointAccessor.getPropertyValue("autoStartup")).isTrue();
assertThat((boolean) endpointAccessor.getPropertyValue("expectReply")).isTrue();
assertThat(endpointAccessor.getPropertyValue("statusCodeExpression")).isNull();
assertThat(endpointAccessor.getPropertyValue("payloadExpression")).isNull();
assertThat(endpointAccessor.getPropertyValue("headerExpressions")).isNull();
assertThat(endpointAccessor.getPropertyValue("crossOrigin")).isNull();
assertThat(endpointAccessor.getPropertyValue("requestPayloadType")).isNull();
assertNotSame(this.headerMapper, endpointAccessor.getPropertyValue("headerMapper"));
assertNotSame(this.serverCodecConfigurer, endpointAccessor.getPropertyValue("codecConfigurer"));
assertNotSame(this.requestedContentTypeResolver, endpointAccessor.getPropertyValue("requestedContentTypeResolver"));
assertNotSame(this.reactiveAdapterRegistry, endpointAccessor.getPropertyValue("adapterRegistry"));
assertThat(endpointAccessor.getPropertyValue("headerMapper")).isNotSameAs(this.headerMapper);
assertThat(endpointAccessor.getPropertyValue("codecConfigurer")).isNotSameAs(this.serverCodecConfigurer);
assertThat(endpointAccessor.getPropertyValue("requestedContentTypeResolver"))
.isNotSameAs(this.requestedContentTypeResolver);
assertThat(endpointAccessor.getPropertyValue("adapterRegistry")).isNotSameAs(this.reactiveAdapterRegistry);
}
@Test
@SuppressWarnings("unchecked")
public void reactiveFullConfig() {
DirectFieldAccessor endpointAccessor = new DirectFieldAccessor(this.reactiveFullConfig);
assertSame(this.requests, endpointAccessor.getPropertyValue("requestChannel"));
assertNotNull(endpointAccessor.getPropertyValue("errorChannel"));
assertFalse((boolean) endpointAccessor.getPropertyValue("autoStartup"));
assertEquals(101, endpointAccessor.getPropertyValue("phase"));
assertTrue((boolean) endpointAccessor.getPropertyValue("expectReply"));
assertThat(endpointAccessor.getPropertyValue("requestChannel")).isSameAs(this.requests);
assertThat(endpointAccessor.getPropertyValue("errorChannel")).isNotNull();
assertThat((boolean) endpointAccessor.getPropertyValue("autoStartup")).isFalse();
assertThat(endpointAccessor.getPropertyValue("phase")).isEqualTo(101);
assertThat((boolean) endpointAccessor.getPropertyValue("expectReply")).isTrue();
assertEquals("'504'",
((SpelExpression) endpointAccessor.getPropertyValue("statusCodeExpression")).getExpressionString());
assertThat(((SpelExpression) endpointAccessor.getPropertyValue("statusCodeExpression")).getExpressionString())
.isEqualTo("'504'");
assertEquals("payload",
((SpelExpression) endpointAccessor.getPropertyValue("payloadExpression")).getExpressionString());
assertThat(((SpelExpression) endpointAccessor.getPropertyValue("payloadExpression")).getExpressionString())
.isEqualTo("payload");
Map<String, Expression> headerExpressions =
(Map<String, Expression>) endpointAccessor.getPropertyValue("headerExpressions");
assertTrue(headerExpressions.containsKey("foo"));
assertThat(headerExpressions.containsKey("foo")).isTrue();
assertEquals("foo", headerExpressions.get("foo").getValue());
assertThat(headerExpressions.get("foo").getValue()).isEqualTo("foo");
CrossOrigin crossOrigin = (CrossOrigin) endpointAccessor.getPropertyValue("crossOrigin");
assertNotNull(crossOrigin);
assertArrayEquals(new String[] { "foo" }, crossOrigin.getOrigin());
assertThat(crossOrigin).isNotNull();
assertThat(crossOrigin.getOrigin()).isEqualTo(new String[] { "foo" });
assertEquals(ResolvableType.forClass(byte[].class), endpointAccessor.getPropertyValue("requestPayloadType"));
assertThat(endpointAccessor.getPropertyValue("requestPayloadType"))
.isEqualTo(ResolvableType.forClass(byte[].class));
assertSame(this.headerMapper, endpointAccessor.getPropertyValue("headerMapper"));
assertSame(this.serverCodecConfigurer, endpointAccessor.getPropertyValue("codecConfigurer"));
assertSame(this.requestedContentTypeResolver, endpointAccessor.getPropertyValue("requestedContentTypeResolver"));
assertSame(this.reactiveAdapterRegistry, endpointAccessor.getPropertyValue("adapterRegistry"));
assertThat(endpointAccessor.getPropertyValue("headerMapper")).isSameAs(this.headerMapper);
assertThat(endpointAccessor.getPropertyValue("codecConfigurer")).isSameAs(this.serverCodecConfigurer);
assertThat(endpointAccessor.getPropertyValue("requestedContentTypeResolver"))
.isSameAs(this.requestedContentTypeResolver);
assertThat(endpointAccessor.getPropertyValue("adapterRegistry")).isSameAs(this.reactiveAdapterRegistry);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2017 the original author or authors.
* Copyright 2017-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,10 +16,7 @@
package org.springframework.integration.webflux.config;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotSame;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.assertj.core.api.Assertions.assertThat;
import java.nio.charset.Charset;
@@ -66,23 +63,25 @@ public class WebFluxOutboundChannelAdapterParserTests {
DirectFieldAccessor endpointAccessor = new DirectFieldAccessor(this.reactiveMinimalConfig);
WebClient webClient =
TestUtils.getPropertyValue(this.reactiveMinimalConfig, "handler.webClient", WebClient.class);
assertNotSame(this.webClient, webClient);
assertThat(webClient).isNotSameAs(this.webClient);
Object handler = endpointAccessor.getPropertyValue("handler");
DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(handler);
assertEquals(false, handlerAccessor.getPropertyValue("expectReply"));
assertEquals(this.applicationContext.getBean("requests"), endpointAccessor.getPropertyValue("inputChannel"));
assertNull(handlerAccessor.getPropertyValue("outputChannel"));
assertThat(handlerAccessor.getPropertyValue("expectReply")).isEqualTo(false);
assertThat(endpointAccessor.getPropertyValue("inputChannel"))
.isEqualTo(this.applicationContext.getBean("requests"));
assertThat(handlerAccessor.getPropertyValue("outputChannel")).isNull();
Expression uriExpression = (Expression) handlerAccessor.getPropertyValue("uriExpression");
assertEquals("http://localhost/test1", uriExpression.getValue());
assertEquals(HttpMethod.POST.name(),
TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString());
assertEquals(Charset.forName("UTF-8"), handlerAccessor.getPropertyValue("charset"));
assertEquals(true, handlerAccessor.getPropertyValue("extractPayload"));
assertThat(uriExpression.getValue()).isEqualTo("http://localhost/test1");
assertThat(TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString())
.isEqualTo(HttpMethod.POST.name());
assertThat(handlerAccessor.getPropertyValue("charset")).isEqualTo(Charset.forName("UTF-8"));
assertThat(handlerAccessor.getPropertyValue("extractPayload")).isEqualTo(true);
}
@Test
public void reactiveWebClientConfig() {
assertSame(this.webClient, TestUtils.getPropertyValue(this.reactiveWebClientConfig, "handler.webClient"));
assertThat(TestUtils.getPropertyValue(this.reactiveWebClientConfig, "handler.webClient"))
.isSameAs(this.webClient);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2017-2018 the original author or authors.
* Copyright 2017-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,11 +16,7 @@
package org.springframework.integration.webflux.config;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.assertj.core.api.Assertions.assertThat;
import java.nio.charset.Charset;
import java.util.Map;
@@ -74,19 +70,19 @@ public class WebFluxOutboundGatewayParserTests {
Object handler = new DirectFieldAccessor(this.reactiveMinimalConfigEndpoint).getPropertyValue("handler");
Object requestChannel = new DirectFieldAccessor(this.reactiveMinimalConfigEndpoint)
.getPropertyValue("inputChannel");
assertEquals(this.applicationContext.getBean("requests"), requestChannel);
assertThat(requestChannel).isEqualTo(this.applicationContext.getBean("requests"));
DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(handler);
Object replyChannel = handlerAccessor.getPropertyValue("outputChannel");
assertNull(replyChannel);
assertSame(this.webClient, handlerAccessor.getPropertyValue("webClient"));
assertThat(replyChannel).isNull();
assertThat(handlerAccessor.getPropertyValue("webClient")).isSameAs(this.webClient);
Expression uriExpression = (Expression) handlerAccessor.getPropertyValue("uriExpression");
assertEquals("http://localhost/test1", uriExpression.getValue());
assertEquals(HttpMethod.POST.name(),
TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString());
assertEquals(Charset.forName("UTF-8"), handlerAccessor.getPropertyValue("charset"));
assertEquals(true, handlerAccessor.getPropertyValue("extractPayload"));
assertEquals(false, handlerAccessor.getPropertyValue("transferCookies"));
assertEquals(false, handlerAccessor.getPropertyValue("replyPayloadToFlux"));
assertThat(uriExpression.getValue()).isEqualTo("http://localhost/test1");
assertThat(TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString())
.isEqualTo(HttpMethod.POST.name());
assertThat(handlerAccessor.getPropertyValue("charset")).isEqualTo(Charset.forName("UTF-8"));
assertThat(handlerAccessor.getPropertyValue("extractPayload")).isEqualTo(true);
assertThat(handlerAccessor.getPropertyValue("transferCookies")).isEqualTo(false);
assertThat(handlerAccessor.getPropertyValue("replyPayloadToFlux")).isEqualTo(false);
}
@Test
@@ -96,40 +92,40 @@ public class WebFluxOutboundGatewayParserTests {
Object handler = endpointAccessor.getPropertyValue("handler");
MessageChannel requestChannel = (MessageChannel) new DirectFieldAccessor(
this.reactiveFullConfigEndpoint).getPropertyValue("inputChannel");
assertEquals(this.applicationContext.getBean("requests"), requestChannel);
assertThat(requestChannel).isEqualTo(this.applicationContext.getBean("requests"));
DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(handler);
assertEquals(77, handlerAccessor.getPropertyValue("order"));
assertEquals(Boolean.FALSE, endpointAccessor.getPropertyValue("autoStartup"));
assertThat(handlerAccessor.getPropertyValue("order")).isEqualTo(77);
assertThat(endpointAccessor.getPropertyValue("autoStartup")).isEqualTo(Boolean.FALSE);
Object replyChannel = handlerAccessor.getPropertyValue("outputChannel");
assertNotNull(replyChannel);
assertEquals(this.applicationContext.getBean("replies"), replyChannel);
assertThat(replyChannel).isNotNull();
assertThat(replyChannel).isEqualTo(this.applicationContext.getBean("replies"));
assertEquals(String.class.getName(),
TestUtils.getPropertyValue(handler, "expectedResponseTypeExpression", Expression.class).getValue());
assertThat(TestUtils.getPropertyValue(handler, "expectedResponseTypeExpression", Expression.class).getValue())
.isEqualTo(String.class.getName());
Expression uriExpression = (Expression) handlerAccessor.getPropertyValue("uriExpression");
assertEquals("http://localhost/test2", uriExpression.getValue());
assertEquals(HttpMethod.PUT.name(),
TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString());
assertEquals(Charset.forName("UTF-8"), handlerAccessor.getPropertyValue("charset"));
assertEquals(false, handlerAccessor.getPropertyValue("extractPayload"));
assertThat(uriExpression.getValue()).isEqualTo("http://localhost/test2");
assertThat(TestUtils.getPropertyValue(handler, "httpMethodExpression", Expression.class).getExpressionString())
.isEqualTo(HttpMethod.PUT.name());
assertThat(handlerAccessor.getPropertyValue("charset")).isEqualTo(Charset.forName("UTF-8"));
assertThat(handlerAccessor.getPropertyValue("extractPayload")).isEqualTo(false);
Object sendTimeout = new DirectFieldAccessor(
handlerAccessor.getPropertyValue("messagingTemplate")).getPropertyValue("sendTimeout");
assertEquals(new Long("1234"), sendTimeout);
assertThat(sendTimeout).isEqualTo(new Long("1234"));
Map<String, Expression> uriVariableExpressions =
(Map<String, Expression>) handlerAccessor.getPropertyValue("uriVariableExpressions");
assertEquals(1, uriVariableExpressions.size());
assertEquals("headers.bar", uriVariableExpressions.get("foo").getExpressionString());
assertThat(uriVariableExpressions.size()).isEqualTo(1);
assertThat(uriVariableExpressions.get("foo").getExpressionString()).isEqualTo("headers.bar");
DirectFieldAccessor mapperAccessor = new DirectFieldAccessor(handlerAccessor.getPropertyValue("headerMapper"));
String[] mappedRequestHeaders = (String[]) mapperAccessor.getPropertyValue("outboundHeaderNames");
String[] mappedResponseHeaders = (String[]) mapperAccessor.getPropertyValue("inboundHeaderNames");
assertEquals(2, mappedRequestHeaders.length);
assertEquals(1, mappedResponseHeaders.length);
assertTrue(ObjectUtils.containsElement(mappedRequestHeaders, "requestHeader1"));
assertTrue(ObjectUtils.containsElement(mappedRequestHeaders, "requestHeader2"));
assertEquals("responseHeader", mappedResponseHeaders[0]);
assertEquals(true, handlerAccessor.getPropertyValue("transferCookies"));
assertEquals(true, handlerAccessor.getPropertyValue("replyPayloadToFlux"));
assertSame(this.bodyExtractor, handlerAccessor.getPropertyValue("bodyExtractor"));
assertThat(mappedRequestHeaders.length).isEqualTo(2);
assertThat(mappedResponseHeaders.length).isEqualTo(1);
assertThat(ObjectUtils.containsElement(mappedRequestHeaders, "requestHeader1")).isTrue();
assertThat(ObjectUtils.containsElement(mappedRequestHeaders, "requestHeader2")).isTrue();
assertThat(mappedResponseHeaders[0]).isEqualTo("responseHeader");
assertThat(handlerAccessor.getPropertyValue("transferCookies")).isEqualTo(true);
assertThat(handlerAccessor.getPropertyValue("replyPayloadToFlux")).isEqualTo(true);
assertThat(handlerAccessor.getPropertyValue("bodyExtractor")).isSameAs(this.bodyExtractor);
}
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2016-2018 the original author or authors.
* Copyright 2016-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,10 +16,7 @@
package org.springframework.integration.webflux.dsl;
import static org.hamcrest.Matchers.instanceOf;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertThat;
import static org.assertj.core.api.Assertions.assertThat;
import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.httpBasic;
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
@@ -171,8 +168,8 @@ public class WebFluxDslTests {
Message<?> receive = replyChannel.receive(10_000);
assertNotNull(receive);
assertThat(receive.getPayload(), instanceOf(Flux.class));
assertThat(receive).isNotNull();
assertThat(receive.getPayload()).isInstanceOf(Flux.class);
@SuppressWarnings("unchecked")
Flux<String> response = (Flux<String>) receive.getPayload();
@@ -222,10 +219,10 @@ public class WebFluxDslTests {
.expectStatus().isAccepted();
Message<?> store = this.storeChannel.receive(10_000);
assertNotNull(store);
assertThat(store.getPayload(), instanceOf(Flux.class));
assertThat(store).isNotNull();
assertThat(store.getPayload()).isInstanceOf(Flux.class);
assertThat(store.getHeaders().get(HttpHeaders.USER_PRINCIPAL, Principal.class).getName(), is("guest"));
assertThat(store.getHeaders().get(HttpHeaders.USER_PRINCIPAL, Principal.class).getName()).isEqualTo("guest");
StepVerifier
.create((Publisher<String>) store.getPayload())

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2017-2018 the original author or authors.
* Copyright 2017-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,13 +16,7 @@
package org.springframework.integration.webflux.outbound;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.instanceOf;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertThat;
import static org.springframework.integration.test.matcher.HeaderMatcher.hasHeader;
import static org.assertj.core.api.Assertions.assertThat;
import java.util.List;
@@ -82,8 +76,8 @@ public class WebFluxRequestExecutingMessageHandlerTests {
reactiveHandler.handleMessage(MessageBuilder.withPayload("hello, world").build());
StepVerifier.create(ackChannel, 2)
.assertNext(m -> assertThat(m, hasHeader(HttpHeaders.STATUS_CODE, HttpStatus.OK)))
.assertNext(m -> assertThat(m, hasHeader(HttpHeaders.STATUS_CODE, HttpStatus.OK)))
.assertNext(m -> assertThat(m.getHeaders()).containsEntry(HttpHeaders.STATUS_CODE, HttpStatus.OK))
.assertNext(m -> assertThat(m.getHeaders()).containsEntry(HttpHeaders.STATUS_CODE, HttpStatus.OK))
.then(() ->
((Subscriber<?>) TestUtils.getPropertyValue(ackChannel, "subscribers", List.class).get(0))
.onComplete())
@@ -114,10 +108,10 @@ public class WebFluxRequestExecutingMessageHandlerTests {
Message<?> errorMessage = errorChannel.receive(10000);
assertNotNull(errorMessage);
assertThat(errorMessage, instanceOf(ErrorMessage.class));
assertThat(errorMessage).isNotNull();
assertThat(errorMessage).isInstanceOf(ErrorMessage.class);
Throwable throwable = (Throwable) errorMessage.getPayload();
assertThat(throwable.getMessage(), containsString("401 Unauthorized"));
assertThat(throwable.getMessage()).contains("401 Unauthorized");
}
@Test
@@ -143,10 +137,10 @@ public class WebFluxRequestExecutingMessageHandlerTests {
Message<?> errorMessage = errorChannel.receive(10000);
assertNotNull(errorMessage);
assertThat(errorMessage, instanceOf(ErrorMessage.class));
assertThat(errorMessage).isNotNull();
assertThat(errorMessage).isInstanceOf(ErrorMessage.class);
Throwable throwable = (Throwable) errorMessage.getPayload();
assertThat(throwable.getMessage(), containsString("Intentional connection error"));
assertThat(throwable.getMessage()).contains("Intentional connection error");
}
@Test
@@ -176,17 +170,17 @@ public class WebFluxRequestExecutingMessageHandlerTests {
messageHandler.handleMessage(requestMessage);
Message<?> errorMessage = errorChannel.receive(10000);
assertNotNull(errorMessage);
assertThat(errorMessage).isNotNull();
Object payload = errorMessage.getPayload();
assertThat(payload, instanceOf(MessageHandlingException.class));
assertThat(payload).isInstanceOf(MessageHandlingException.class);
Exception exception = (Exception) payload;
assertThat(exception.getCause(), instanceOf(WebClientResponseException.class));
assertThat(exception.getMessage(), containsString("503 Service Unavailable"));
assertThat(exception.getCause()).isInstanceOf(WebClientResponseException.class);
assertThat(exception.getMessage()).contains("503 Service Unavailable");
Message<?> replyMessage = errorChannel.receive(10);
assertNull(replyMessage);
assertThat(replyMessage).isNull();
}
@Test
@@ -221,9 +215,9 @@ public class WebFluxRequestExecutingMessageHandlerTests {
Message<?> receive = replyChannel.receive(10_000);
assertNotNull(receive);
assertThat(receive).isNotNull();
assertThat(receive.getPayload(), instanceOf(Flux.class));
assertThat(receive.getPayload()).isInstanceOf(Flux.class);
Flux<String> flux = (Flux<String>) receive.getPayload();
@@ -265,15 +259,15 @@ public class WebFluxRequestExecutingMessageHandlerTests {
Message<?> receive = replyChannel.receive(10_000);
assertNotNull(receive);
assertThat(receive).isNotNull();
assertThat(receive.getPayload(), instanceOf(ClientHttpResponse.class));
assertThat(receive.getPayload()).isInstanceOf(ClientHttpResponse.class);
ClientHttpResponse response = (ClientHttpResponse) receive.getPayload();
assertEquals(HttpStatus.OK, response.getStatusCode());
assertEquals(MediaType.TEXT_PLAIN, response.getHeaders().getContentType());
assertThat(response.getStatusCode()).isEqualTo(HttpStatus.OK);
assertThat(response.getHeaders().getContentType()).isEqualTo(MediaType.TEXT_PLAIN);
StepVerifier.create(
response.getBody()