From 0efac79dbed6d8ba6a5ca35c33193c145ca29689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Nicoll?= Date: Mon, 19 May 2025 16:43:35 +0200 Subject: [PATCH] Move R2DBC testcontainers support into spring-boot-r2dbc --- .../spring-boot-r2dbc/build.gradle | 18 ++++++++++++++++++ ...nnectionDetailsFactoryIntegrationTests.java | 2 +- ...nnectionDetailsFactoryIntegrationTests.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- ...R2dbcContainerConnectionDetailsFactory.java | 2 +- .../r2dbc/testcontainers}/package-info.java | 2 +- .../main/resources/META-INF/spring.factories | 10 ++++++++++ ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- ...ContainerConnectionDetailsFactoryTests.java | 2 +- .../build.gradle | 17 ----------------- .../main/resources/META-INF/spring.factories | 7 ------- .../build.gradle | 2 +- .../build.gradle | 2 +- 23 files changed, 47 insertions(+), 43 deletions(-) rename spring-boot-project/{spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers}/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers}/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/ClickHouseR2dbcContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/MariaDbR2dbcContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/MySqlR2dbcContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/OracleFreeR2dbcContainerConnectionDetailsFactory.java (96%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/OracleXeR2dbcContainerConnectionDetailsFactory.java (96%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/PostgresR2dbcContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/SqlServerR2dbcContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers}/package-info.java (90%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/MySqlR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/PostgresR2dbcContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc => spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers}/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java (95%) diff --git a/spring-boot-project/spring-boot-r2dbc/build.gradle b/spring-boot-project/spring-boot-r2dbc/build.gradle index 0136a2eeae..015686f093 100644 --- a/spring-boot-project/spring-boot-r2dbc/build.gradle +++ b/spring-boot-project/spring-boot-r2dbc/build.gradle @@ -4,6 +4,7 @@ plugins { id "org.springframework.boot.auto-configuration" id "org.springframework.boot.configuration-properties" id "org.springframework.boot.deployed" + id "org.springframework.boot.docker-test" id "org.springframework.boot.optional-dependencies" } @@ -21,10 +22,26 @@ dependencies { optional(project(":spring-boot-project:spring-boot-actuator")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) optional(project(":spring-boot-project:spring-boot-jdbc")) + optional(project(":spring-boot-project:spring-boot-testcontainers")) optional("io.micrometer:micrometer-core") optional("io.r2dbc:r2dbc-pool") optional("io.r2dbc:r2dbc-proxy") optional("io.r2dbc:r2dbc-spi") + optional("org.testcontainers:clickhouse") + optional("org.testcontainers:jdbc") + optional("org.testcontainers:mariadb") + optional("org.testcontainers:mssqlserver") + optional("org.testcontainers:mysql") + optional("org.testcontainers:oracle-xe") + optional("org.testcontainers:oracle-free") + optional("org.testcontainers:postgresql") + optional("org.testcontainers:r2dbc") + + dockerTestImplementation(project(":spring-boot-project:spring-boot-jdbc")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) + dockerTestImplementation("org.testcontainers:junit-jupiter") + dockerTestRuntimeOnly("com.oracle.database.r2dbc:oracle-r2dbc") testCompileOnly("com.fasterxml.jackson.core:jackson-annotations") @@ -32,6 +49,7 @@ dependencies { testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) testImplementation(testFixtures(project(":spring-boot-project:spring-boot-sql"))) + testImplementation(testFixtures(project(":spring-boot-project:spring-boot-testcontainers"))) testImplementation("io.projectreactor:reactor-test") testImplementation("io.r2dbc:r2dbc-h2") testImplementation("org.postgresql:r2dbc-postgresql") diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java rename to spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java index ab03637265..962878168a 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import java.time.Duration; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java rename to spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java index 2bd14c8697..ac4e85ee7c 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/dockerTest/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import java.time.Duration; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactory.java index f75c004428..b901a06340 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.clickhouse.ClickHouseContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactory.java index 295537ad48..a21b0613c3 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.containers.MariaDBContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactory.java index c647b9909e..13795f9d4c 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.containers.MySQLContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactory.java similarity index 96% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactory.java index 35ec1ecfaf..3e43afd151 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.oracle.OracleContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactory.java similarity index 96% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactory.java index 60cd79a1af..87893cdb66 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.containers.OracleContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactory.java index 243bd1fbb0..c30381051f 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.containers.PostgreSQLContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactory.java index cfc31e5ea3..51ff2ce0f1 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.testcontainers.containers.MSSQLR2DBCDatabaseContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/package-info.java b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/package-info.java similarity index 90% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/package-info.java rename to spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/package-info.java index 404c55c083..cfaa6f7d2a 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/r2dbc/package-info.java +++ b/spring-boot-project/spring-boot-r2dbc/src/main/java/org/springframework/boot/r2dbc/testcontainers/package-info.java @@ -17,4 +17,4 @@ /** * Support for testcontainers R2DBC service connections. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; diff --git a/spring-boot-project/spring-boot-r2dbc/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-r2dbc/src/main/resources/META-INF/spring.factories index 2144366ac0..fc09d1ee33 100644 --- a/spring-boot-project/spring-boot-r2dbc/src/main/resources/META-INF/spring.factories +++ b/spring-boot-project/spring-boot-r2dbc/src/main/resources/META-INF/spring.factories @@ -1,3 +1,13 @@ +# Connection Details Factories +org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ +org.springframework.boot.r2dbc.testcontainers.ClickHouseR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.MariaDbR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.MySqlR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.OracleFreeR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.OracleXeR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.PostgresR2dbcContainerConnectionDetailsFactory,\ +org.springframework.boot.r2dbc.testcontainers.SqlServerR2dbcContainerConnectionDetailsFactory + # Database Initializer Detectors org.springframework.boot.sql.init.dependency.DatabaseInitializerDetector=\ org.springframework.boot.r2dbc.init.R2dbcScriptDatabaseInitializerDetector diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java index ef1fec1a85..2355f213c5 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/ClickHouseR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java index ef0c9b59bc..a79fadef79 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MariaDbR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactoryTests.java index ae52133ca3..4f7251d843 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/MySqlR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/MySqlR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java index 426b67cf55..e29f171053 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleFreeR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java index c5c102550d..6da457bff0 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/OracleXeR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactoryTests.java index 372365cf21..0f1bb799ee 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/PostgresR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/PostgresR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java index be10bb81cb..394f3923ef 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/r2dbc/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-r2dbc/src/test/java/org/springframework/boot/r2dbc/testcontainers/SqlServerR2dbcContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.r2dbc; +package org.springframework.boot.r2dbc.testcontainers; import io.r2dbc.spi.ConnectionFactoryOptions; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/build.gradle b/spring-boot-project/spring-boot-testcontainers-all/build.gradle index 0557cbf9fc..2e3a3db4b3 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/build.gradle +++ b/spring-boot-project/spring-boot-testcontainers-all/build.gradle @@ -11,8 +11,6 @@ dependencies { api(project(":spring-boot-project:spring-boot-autoconfigure")) api(project(":spring-boot-project:spring-boot-testcontainers")) - dockerTestImplementation(project(":spring-boot-project:spring-boot-jdbc")) - dockerTestImplementation(project(":spring-boot-project:spring-boot-r2dbc")) dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tx")) @@ -26,31 +24,16 @@ dependencies { dockerTestImplementation("org.junit.platform:junit-platform-launcher") dockerTestImplementation("org.mockito:mockito-core") dockerTestImplementation("org.springframework:spring-core-test") - dockerTestImplementation("org.springframework:spring-jdbc") dockerTestImplementation("org.springframework.data:spring-data-redis") dockerTestImplementation("org.testcontainers:junit-jupiter") - dockerTestRuntimeOnly("com.oracle.database.r2dbc:oracle-r2dbc") - dockerTestRuntimeOnly("com.zaxxer:HikariCP") dockerTestRuntimeOnly("io.lettuce:lettuce-core") - dockerTestRuntimeOnly("org.postgresql:postgresql") optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure-all")) optional(project(":spring-boot-project:spring-boot-data-redis")) - optional(project(":spring-boot-project:spring-boot-jdbc")) - optional(project(":spring-boot-project:spring-boot-r2dbc")) optional(project(":spring-boot-project:spring-boot-tx")) optional("org.springframework:spring-test") - optional("org.testcontainers:clickhouse") optional("org.testcontainers:grafana") - optional("org.testcontainers:jdbc") - optional("org.testcontainers:mariadb") - optional("org.testcontainers:mssqlserver") - optional("org.testcontainers:mysql") - optional("org.testcontainers:oracle-xe") - optional("org.testcontainers:oracle-free") - optional("org.testcontainers:postgresql") - optional("org.testcontainers:r2dbc") optional("com.redis:testcontainers-redis") testImplementation(project(":spring-boot-project:spring-boot-test")) diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories index 532f9d7e69..285306fbcd 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories +++ b/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories @@ -6,12 +6,5 @@ org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelem org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryLoggingContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryMetricsContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryTracingContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.ClickHouseR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.MariaDbR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.MySqlR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.OracleFreeR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.OracleXeR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.PostgresR2dbcContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.r2dbc.SqlServerR2dbcContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.redis.RedisContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.zipkin.ZipkinContainerConnectionDetailsFactory diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle index 9d76c0e8a2..d9b0cf47b3 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-flyway/build.gradle @@ -7,7 +7,7 @@ description = "Spring Boot Data R2DBC with Flyway smoke test" dependencies { dockerTestImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test")) - dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers-all")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) dockerTestImplementation("io.projectreactor:reactor-test") dockerTestImplementation("org.testcontainers:junit-jupiter") diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle index 476efc0e7d..ab961cf2c2 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-data-r2dbc-liquibase/build.gradle @@ -7,7 +7,7 @@ description = "Spring Boot Data R2DBC with Liquibase smoke test" dependencies { dockerTestImplementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-test")) - dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers-all")) + dockerTestImplementation(project(":spring-boot-project:spring-boot-testcontainers")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) dockerTestImplementation("io.projectreactor:reactor-test") dockerTestImplementation("org.testcontainers:junit-jupiter")