diff --git a/applications/stream-applications-integration-tests/pom.xml b/applications/stream-applications-integration-tests/pom.xml
index 75b8d7b5..25a4e654 100644
--- a/applications/stream-applications-integration-tests/pom.xml
+++ b/applications/stream-applications-integration-tests/pom.xml
@@ -16,7 +16,7 @@
Integration Tests for stream applications
- 2.6.2
+ 3.1.2
2.27.1
8.0.28
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/common/Configuration.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/common/Configuration.java
index fa7c1489..ef13be44 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/common/Configuration.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/common/Configuration.java
@@ -29,7 +29,7 @@ public abstract class Configuration {
/**
* Duration.
*/
- public static final Duration DEFAULT_DURATION = Duration.ofMinutes(1);
+ public static final Duration DEFAULT_DURATION = Duration.ofSeconds(90);
private static final String SPRING_CLOUD_STREAM_APPLICATIONS_VERSION = "spring.cloud.stream.applications.version";
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/processor/httprequest/HttpRequestProcessorTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/processor/httprequest/HttpRequestProcessorTests.java
index 26ddaf00..828b56bf 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/processor/httprequest/HttpRequestProcessorTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/processor/httprequest/HttpRequestProcessorTests.java
@@ -27,6 +27,8 @@ import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.stream.app.test.integration.OutputMatcher;
@@ -41,7 +43,7 @@ import static org.springframework.cloud.stream.app.test.integration.AppLog.appLo
@Tag("integration")
abstract class HttpRequestProcessorTests {
-
+ private final static Logger logger = LoggerFactory.getLogger(HttpRequestProcessorTests.class);
private static MockWebServer server;
private static int serverPort;
@@ -81,7 +83,11 @@ abstract class HttpRequestProcessorTests {
});
testTopicSender.send(processor.getInputDestination(), "ping");
await().atMost(DEFAULT_DURATION)
- .until(outputMatcher.messageMatches(message -> message.getPayload().equals("{\"response\":\"ping\"}")));
+ .until(outputMatcher.messageMatches(message -> {
+ Object payload = message.getPayload();
+ logger.info("payload:{}", payload);
+ return payload.equals("{\"response\":\"ping\"}");
+ }));
// See https://github.com/spring-cloud/spring-cloud-stream/issues/2190 .This condition is no longer true.
// && message.getHeaders().get(MessageHeaders.CONTENT_TYPE)
// .equals(MediaType.APPLICATION_JSON_VALUE)));
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/jdbc/JdbcSinkTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/jdbc/JdbcSinkTests.java
index 9d9711ea..03193084 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/jdbc/JdbcSinkTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/jdbc/JdbcSinkTests.java
@@ -72,7 +72,7 @@ public abstract class JdbcSinkTests {
.withEnv("SPRING_DATASOURCE_PASSWORD", "secret")
.withEnv("SPRING_DATASOURCE_DRIVER_CLASS_NAME", "org.mariadb.jdbc.Driver")
.withEnv("SPRING_DATASOURCE_URL",
- "jdbc:mariadb://mysql-for-sink:3306/test")
+ "jdbc:mysql://mysql-for-sink:3306/test?permitMysqlScheme")
.waitingFor(Wait.forLogMessage(".*Started JdbcSink.*", 1));
startSink();
}
@@ -83,7 +83,7 @@ public abstract class JdbcSinkTests {
dataSource.setDriverClassName("org.mariadb.jdbc.Driver");
dataSource.setUsername(mySQL.getUsername());
dataSource.setPassword(mySQL.getPassword());
- dataSource.setJdbcUrl("jdbc:mysql://localhost:" + mySQL.getMappedPort(3306) + "/test");
+ dataSource.setJdbcUrl(mySQL.getJdbcUrl() + "?permitMysqlScheme");
jdbcTemplate = new JdbcTemplate(dataSource);
jdbcTemplate.execute("DELETE FROM People");
await().atMost(DEFAULT_DURATION)
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/tcp/TcpSinkTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/tcp/TcpSinkTests.java
index 0af448ec..7b9f458b 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/tcp/TcpSinkTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/sink/tcp/TcpSinkTests.java
@@ -67,11 +67,13 @@ abstract class TcpSinkTests {
sink.start();
}
+ @SuppressWarnings("resource")
static void startTcpServer() {
socketReady.set(false);
new Thread(() -> {
try {
- socket = new ServerSocket(tcpPort, 50, InetAddress.getLocalHost()).accept();
+ socket = new ServerSocket(tcpPort, 16, InetAddress.getLocalHost())
+ .accept();
socketReady.set(true);
}
catch (IOException e) {
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/jdbc/JdbcSourceTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/jdbc/JdbcSourceTests.java
index 2b4b6c8a..1a6afda1 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/jdbc/JdbcSourceTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/jdbc/JdbcSourceTests.java
@@ -67,7 +67,7 @@ abstract class JdbcSourceTests {
.withEnv("SPRING_DATASOURCE_USERNAME", "test")
.withEnv("SPRING_DATASOURCE_PASSWORD", "secret")
.withEnv("SPRING_DATASOURCE_DRIVER_CLASS_NAME", "org.mariadb.jdbc.Driver")
- .withEnv("SPRING_DATASOURCE_URL", "jdbc:mariadb://mysql-for-source:3306/test");
+ .withEnv("SPRING_DATASOURCE_URL", "jdbc:mysql://mysql-for-source:3306/test?permitMysqlScheme");
startSource();
}
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/time/TimeSourceTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/time/TimeSourceTests.java
index ae4ec26e..a8733fa4 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/time/TimeSourceTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/source/time/TimeSourceTests.java
@@ -95,7 +95,7 @@ abstract class TimeSourceTests {
webClient.get()
.uri("http://" + source.getHost() + ":" + source.getMappedPort(8080) + "/actuator/env")
.exchangeToMono(response -> {
- assertThat(response.statusCode()).isEqualTo(HttpStatus.NOT_FOUND);
+ assertThat(response.statusCode()).isEqualTo(HttpStatus.UNAUTHORIZED);
return response.toBodilessEntity();
}).block();
}
diff --git a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/stream/jdbclog/KafkaJdbcLogStreamTests.java b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/stream/jdbclog/KafkaJdbcLogStreamTests.java
index e679f828..22a30751 100644
--- a/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/stream/jdbclog/KafkaJdbcLogStreamTests.java
+++ b/applications/stream-applications-integration-tests/src/test/java/org/springframework/cloud/stream/app/integration/test/stream/jdbclog/KafkaJdbcLogStreamTests.java
@@ -81,7 +81,7 @@ public class KafkaJdbcLogStreamTests {
.withEnv("SPRING_DATASOURCE_USERNAME", "test")
.withEnv("SPRING_DATASOURCE_DRIVER_CLASS_NAME", "org.mariadb.jdbc.Driver")
.withEnv("SPRING_DATASOURCE_URL",
- "jdbc:mariadb://mysql-for-stream:3306/test"))
+ "jdbc:mysql://mysql-for-stream:3306/test?permitMysqlScheme"))
.withSinkContainer(
new KafkaStreamAppContainer(StreamAppContainerTestUtils.imageName(
"log-sink-kafka", VERSION)).withLogConsumer(logMatcher))
diff --git a/run-ITs.sh b/run-ITs.sh
index 383f8960..59714272 100755
--- a/run-ITs.sh
+++ b/run-ITs.sh
@@ -10,5 +10,18 @@ VERSION=$1
if [ "$VERSION" == "" ]; then
VERSION=$($SCDIR/mvn-get-version.sh)
fi
-$SCDIR/mvnw $MVN_OPT -pl applications/stream-applications-integration-tests -am install -DskipTests
-$SCDIR/mvnw $MVN_OPT -pl applications/stream-applications-integration-tests verify -Pintegration -Psnapshot -Dspring.cloud.stream.applications.version=$VERSION
+shift
+CONTAINERS="s3-source sftp-source http-request-processor log-sink jdbc-source time-source http-source tcp-sink mongodb-sink"
+BROKERS="rabbit kafka"
+for container in $CONTAINERS; do
+ for broker in $BROKERS; do
+ echo "Pulling springcloudstream/${container}-${broker}:$VERSION"
+ docker pull "springcloudstream/${container}-${broker}:$VERSION"
+ docker tag "springcloudstream/${container}-${broker}:$VERSION" "springcloudstream/${container}-${broker}:latest"
+ done
+done
+echo "Using version:$VERSION"
+$SCDIR/mvnw $MVN_OPT -pl :stream-applications-integration-tests -am install -DskipTests
+$SCDIR/mvnw $MVN_OPT $@ -pl :stream-applications-integration-tests -Pintegration -Psnapshot test integration-test -Dspring.cloud.stream.applications.version=$VERSION
+
+