Skip to content

Commit abb3ff0

Browse files
committed
Combine tests for standard and Bitnami images into single classes
Closes gh-41259
1 parent 0f830e9 commit abb3ff0

File tree

24 files changed

+126
-526
lines changed

24 files changed

+126
-526
lines changed

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/cassandra/CassandraBitnamiDockerComposeConnectionDetailsFactoryIntegrationTests.java

-47
This file was deleted.

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/cassandra/CassandraDockerComposeConnectionDetailsFactoryIntegrationTests.java

+9
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,15 @@ class CassandraDockerComposeConnectionDetailsFactoryIntegrationTests {
3434

3535
@DockerComposeTest(composeFile = "cassandra-compose.yaml", image = TestImage.CASSANDRA)
3636
void runCreatesConnectionDetails(CassandraConnectionDetails connectionDetails) {
37+
assertConnectionDetails(connectionDetails);
38+
}
39+
40+
@DockerComposeTest(composeFile = "cassandra-bitnami-compose.yaml", image = TestImage.BITNAMI_CASSANDRA)
41+
void runWithBitnamiImageCreatesConnectionDetails(CassandraConnectionDetails connectionDetails) {
42+
assertConnectionDetails(connectionDetails);
43+
}
44+
45+
private void assertConnectionDetails(CassandraConnectionDetails connectionDetails) {
3746
List<Node> contactPoints = connectionDetails.getContactPoints();
3847
assertThat(contactPoints).hasSize(1);
3948
Node node = contactPoints.get(0);

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/elasticsearch/ElasticsearchBitnamiDockerComposeConnectionDetailsFactoryIntegrationTests.java

-48
This file was deleted.

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/elasticsearch/ElasticsearchDockerComposeConnectionDetailsFactoryIntegrationTests.java

+10
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,21 @@
3030
* @author Moritz Halbritter
3131
* @author Andy Wilkinson
3232
* @author Phillip Webb
33+
* @author Scott Frederick
3334
*/
3435
class ElasticsearchDockerComposeConnectionDetailsFactoryIntegrationTests {
3536

3637
@DockerComposeTest(composeFile = "elasticsearch-compose.yaml", image = TestImage.ELASTICSEARCH_8)
3738
void runCreatesConnectionDetails(ElasticsearchConnectionDetails connectionDetails) {
39+
assertConnectionDetails(connectionDetails);
40+
}
41+
42+
@DockerComposeTest(composeFile = "elasticsearch-bitnami-compose.yaml", image = TestImage.BITNAMI_ELASTICSEARCH)
43+
void runWithBitnamiImageCreatesConnectionDetails(ElasticsearchConnectionDetails connectionDetails) {
44+
assertConnectionDetails(connectionDetails);
45+
}
46+
47+
private void assertConnectionDetails(ElasticsearchConnectionDetails connectionDetails) {
3848
assertThat(connectionDetails.getUsername()).isEqualTo("elastic");
3949
assertThat(connectionDetails.getPassword()).isEqualTo("secret");
4050
assertThat(connectionDetails.getPathPrefix()).isNull();

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mariadb/MariaDbBitnamiJdbcDockerComposeConnectionDetailsFactoryIntegrationTests.java

-39
This file was deleted.

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mariadb/MariaDbBitnamiR2dbcDockerComposeConnectionDetailsFactoryIntegrationTests.java

-42
This file was deleted.

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mariadb/MariaDbJdbcDockerComposeConnectionDetailsFactoryIntegrationTests.java

+10
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,21 @@
2828
* @author Moritz Halbritter
2929
* @author Andy Wilkinson
3030
* @author Phillip Webb
31+
* @author Scott Frederick
3132
*/
3233
class MariaDbJdbcDockerComposeConnectionDetailsFactoryIntegrationTests {
3334

3435
@DockerComposeTest(composeFile = "mariadb-compose.yaml", image = TestImage.MARIADB)
3536
void runCreatesConnectionDetails(JdbcConnectionDetails connectionDetails) {
37+
assertConnectionDetails(connectionDetails);
38+
}
39+
40+
@DockerComposeTest(composeFile = "mariadb-bitnami-compose.yaml", image = TestImage.BITNAMI_MARIADB)
41+
void runWithBitnamiImageCreatesConnectionDetails(JdbcConnectionDetails connectionDetails) {
42+
assertConnectionDetails(connectionDetails);
43+
}
44+
45+
private void assertConnectionDetails(JdbcConnectionDetails connectionDetails) {
3646
assertThat(connectionDetails.getUsername()).isEqualTo("myuser");
3747
assertThat(connectionDetails.getPassword()).isEqualTo("secret");
3848
assertThat(connectionDetails.getJdbcUrl()).startsWith("jdbc:mariadb://").endsWith("/mydatabase");

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mariadb/MariaDbR2dbcDockerComposeConnectionDetailsFactoryIntegrationTests.java

+10
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,21 @@
3030
* @author Moritz Halbritter
3131
* @author Andy Wilkinson
3232
* @author Phillip Webb
33+
* @author Scott Frederick
3334
*/
3435
class MariaDbR2dbcDockerComposeConnectionDetailsFactoryIntegrationTests {
3536

3637
@DockerComposeTest(composeFile = "mariadb-compose.yaml", image = TestImage.MARIADB)
3738
void runCreatesConnectionDetails(R2dbcConnectionDetails connectionDetails) {
39+
assertConnectionDetails(connectionDetails);
40+
}
41+
42+
@DockerComposeTest(composeFile = "mariadb-bitnami-compose.yaml", image = TestImage.BITNAMI_MARIADB)
43+
void runWithBitnamiImageCreatesConnectionDetails(R2dbcConnectionDetails connectionDetails) {
44+
assertConnectionDetails(connectionDetails);
45+
}
46+
47+
private void assertConnectionDetails(R2dbcConnectionDetails connectionDetails) {
3848
ConnectionFactoryOptions connectionFactoryOptions = connectionDetails.getConnectionFactoryOptions();
3949
assertThat(connectionFactoryOptions.toString()).contains("database=mydatabase", "driver=mariadb",
4050
"password=REDACTED", "user=myuser");

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mongo/MongoBitnamiDockerComposeConnectionDetailsFactoryIntegrationTests.java

-47
This file was deleted.

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mongo/MongoDockerComposeConnectionDetailsFactoryIntegrationTests.java

+13-1
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,12 @@
1717
package org.springframework.boot.docker.compose.service.connection.mongo;
1818

1919
import com.mongodb.ConnectionString;
20+
import org.junit.jupiter.api.condition.OS;
2021

2122
import org.springframework.boot.autoconfigure.mongo.MongoConnectionDetails;
2223
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
2324
import org.springframework.boot.testsupport.container.TestImage;
25+
import org.springframework.boot.testsupport.junit.DisabledOnOs;
2426

2527
import static org.assertj.core.api.Assertions.assertThat;
2628

@@ -36,11 +38,21 @@ class MongoDockerComposeConnectionDetailsFactoryIntegrationTests {
3638

3739
@DockerComposeTest(composeFile = "mongo-compose.yaml", image = TestImage.MONGODB)
3840
void runCreatesConnectionDetails(MongoConnectionDetails connectionDetails) {
41+
assertConnectionDetailsWithDatabase(connectionDetails, "mydatabase");
42+
}
43+
44+
@DisabledOnOs(os = { OS.LINUX, OS.MAC }, architecture = "aarch64", disabledReason = "The image has no ARM support")
45+
@DockerComposeTest(composeFile = "mongo-bitnami-compose.yaml", image = TestImage.BITNAMI_MONGODB)
46+
void runWithBitnamiImageCreatesConnectionDetails(MongoConnectionDetails connectionDetails) {
47+
assertConnectionDetailsWithDatabase(connectionDetails, "testdb");
48+
}
49+
50+
private void assertConnectionDetailsWithDatabase(MongoConnectionDetails connectionDetails, String database) {
3951
ConnectionString connectionString = connectionDetails.getConnectionString();
4052
assertThat(connectionString.getCredential().getUserName()).isEqualTo("root");
4153
assertThat(connectionString.getCredential().getPassword()).isEqualTo("secret".toCharArray());
4254
assertThat(connectionString.getCredential().getSource()).isEqualTo("admin");
43-
assertThat(connectionString.getDatabase()).isEqualTo("mydatabase");
55+
assertThat(connectionString.getDatabase()).isEqualTo(database);
4456
assertThat(connectionDetails.getGridFs()).isNull();
4557
}
4658

spring-boot-project/spring-boot-docker-compose/src/dockerTest/java/org/springframework/boot/docker/compose/service/connection/mysql/MySqlBitnamiJdbcDockerComposeConnectionDetailsFactoryIntegrationTests.java

-39
This file was deleted.

0 commit comments

Comments
 (0)