From c6c47fdf0a2f672f2cbe7d9eb283c2124947962a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Nicoll?= Date: Mon, 19 May 2025 16:22:21 +0200 Subject: [PATCH] Move Neo4j testcontainers support into spring-boot-neo4j --- spring-boot-project/spring-boot-neo4j/build.gradle | 4 +++- .../Neo4jContainerConnectionDetailsFactory.java | 2 +- .../boot/neo4j/testcontainers}/package-info.java | 2 +- .../src/main/resources/META-INF/spring.factories | 3 +++ .../Neo4jContainerConnectionDetailsFactoryTests.java | 2 +- .../spring-boot-testcontainers-all/build.gradle | 3 --- .../src/main/resources/META-INF/spring.factories | 1 - 7 files changed, 9 insertions(+), 8 deletions(-) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j => spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers}/Neo4jContainerConnectionDetailsFactory.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j => spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers}/package-info.java (90%) create mode 100644 spring-boot-project/spring-boot-neo4j/src/main/resources/META-INF/spring.factories rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/neo4j => spring-boot-neo4j/src/test/java/org/springframework/boot/neo4j/testcontainers}/Neo4jContainerConnectionDetailsFactoryTests.java (94%) diff --git a/spring-boot-project/spring-boot-neo4j/build.gradle b/spring-boot-project/spring-boot-neo4j/build.gradle index 8fe5d075c2..88868d5c24 100644 --- a/spring-boot-project/spring-boot-neo4j/build.gradle +++ b/spring-boot-project/spring-boot-neo4j/build.gradle @@ -17,10 +17,11 @@ dependencies { optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-testcontainers")) + optional("org.testcontainers:neo4j") dockerTestImplementation(project(":spring-boot-project:spring-boot-test")) dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) - dockerTestImplementation("org.junit.jupiter:junit-jupiter") dockerTestImplementation("org.testcontainers:junit-jupiter") dockerTestImplementation("org.testcontainers:neo4j") @@ -28,6 +29,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-testcontainers"))) testImplementation("io.projectreactor:reactor-test") testRuntimeOnly("ch.qos.logback:logback-classic") diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactory.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactory.java index 759539a464..82c0027dac 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.neo4j; +package org.springframework.boot.neo4j.testcontainers; import java.net.URI; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j/package-info.java b/spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/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/neo4j/package-info.java rename to spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers/package-info.java index 77bf939e82..e31d573daf 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/neo4j/package-info.java +++ b/spring-boot-project/spring-boot-neo4j/src/main/java/org/springframework/boot/neo4j/testcontainers/package-info.java @@ -17,4 +17,4 @@ /** * Support for testcontainers Neo4J service connections. */ -package org.springframework.boot.testcontainers.service.connection.neo4j; +package org.springframework.boot.neo4j.testcontainers; diff --git a/spring-boot-project/spring-boot-neo4j/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-neo4j/src/main/resources/META-INF/spring.factories new file mode 100644 index 0000000000..4536408386 --- /dev/null +++ b/spring-boot-project/spring-boot-neo4j/src/main/resources/META-INF/spring.factories @@ -0,0 +1,3 @@ +# Connection Details Factories +org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ +org.springframework.boot.neo4j.testcontainers.Neo4jContainerConnectionDetailsFactory diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-neo4j/src/test/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactoryTests.java similarity index 94% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-neo4j/src/test/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactoryTests.java index 41c7f09870..107de25856 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/neo4j/Neo4jContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-neo4j/src/test/java/org/springframework/boot/neo4j/testcontainers/Neo4jContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.neo4j; +package org.springframework.boot.neo4j.testcontainers; import org.junit.jupiter.api.Test; import org.neo4j.driver.AuthToken; diff --git a/spring-boot-project/spring-boot-testcontainers-all/build.gradle b/spring-boot-project/spring-boot-testcontainers-all/build.gradle index e947846135..2c05424455 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/build.gradle +++ b/spring-boot-project/spring-boot-testcontainers-all/build.gradle @@ -40,19 +40,16 @@ dependencies { 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-neo4j")) optional(project(":spring-boot-project:spring-boot-pulsar")) optional(project(":spring-boot-project:spring-boot-r2dbc")) optional(project(":spring-boot-project:spring-boot-tx")) optional("org.springframework:spring-test") - optional("org.springframework.data:spring-data-neo4j") 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:neo4j") optional("org.testcontainers:oracle-xe") optional("org.testcontainers:oracle-free") optional("org.testcontainers:postgresql") 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 564513ed43..06157c8ccd 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 @@ -1,6 +1,5 @@ # Connection Details Factories org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ -org.springframework.boot.testcontainers.service.connection.neo4j.Neo4jContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelemetryLoggingContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelemetryMetricsContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory,\