Polishing.

Move Testcontainer creation into utility.

See #632
This commit is contained in:
Mark Paluch
2021-10-14 14:47:54 +02:00
committed by Greg L. Turnquist
parent e53d9b5643
commit a73d74a76d
53 changed files with 284 additions and 272 deletions

View File

@@ -18,6 +18,7 @@ package example.springdata.mongodb.advanced;
import static org.assertj.core.api.Assertions.*;
import example.springdata.mongodb.customer.Customer;
import example.springdata.mongodb.util.MongoContainers;
import org.bson.Document;
import org.junit.jupiter.api.BeforeEach;
@@ -28,14 +29,14 @@ import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.data.mongodb.core.query.Meta;
import com.mongodb.BasicDBObject;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.MongoDBContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
import com.mongodb.BasicDBObject;
/**
* @author Christoph Strobl
@@ -46,8 +47,7 @@ import org.testcontainers.utility.DockerImageName;
class AdvancedIntegrationTests {
@Container //
private static MongoDBContainer mongoDBContainer = new MongoDBContainer(
DockerImageName.parse("mongo:5.0"));
private static MongoDBContainer mongoDBContainer = MongoContainers.getDefaultContainer();
@DynamicPropertySource
static void setProperties(DynamicPropertyRegistry registry) {

View File

@@ -18,6 +18,8 @@ package example.springdata.mongodb.customer;
import static org.assertj.core.api.Assertions.*;
import static org.assertj.core.data.Offset.offset;
import example.springdata.mongodb.util.MongoContainers;
import java.util.stream.Stream;
import org.junit.jupiter.api.BeforeEach;
@@ -33,10 +35,10 @@ import org.springframework.data.mongodb.core.index.GeospatialIndex;
import org.springframework.data.querydsl.QSort;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.MongoDBContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
/**
* Integration test for {@link CustomerRepository}.
@@ -48,8 +50,7 @@ import org.testcontainers.utility.DockerImageName;
class CustomerRepositoryIntegrationTest {
@Container //
private static MongoDBContainer mongoDBContainer = new MongoDBContainer(
DockerImageName.parse("mongo:5.0"));
private static MongoDBContainer mongoDBContainer = MongoContainers.getDefaultContainer();
@DynamicPropertySource
static void setProperties(DynamicPropertyRegistry registry) {

View File

@@ -17,6 +17,8 @@ package example.springdata.mongodb.immutable;
import static org.assertj.core.api.Assertions.*;
import example.springdata.mongodb.util.MongoContainers;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -25,10 +27,10 @@ import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
import org.springframework.data.mongodb.core.MongoOperations;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.MongoDBContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
/**
* Integration test for {@link ImmutablePerson} showing features around immutable object support.
@@ -41,8 +43,7 @@ import org.testcontainers.utility.DockerImageName;
class ImmutableEntityIntegrationTest {
@Container //
private static MongoDBContainer mongoDBContainer = new MongoDBContainer(
DockerImageName.parse("mongo:5.0"));
private static MongoDBContainer mongoDBContainer = MongoContainers.getDefaultContainer();
@DynamicPropertySource
static void setProperties(DynamicPropertyRegistry registry) {

View File

@@ -17,6 +17,8 @@ package example.springdata.mongodb.projections;
import static org.assertj.core.api.Assertions.*;
import example.springdata.mongodb.util.MongoContainers;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -30,10 +32,10 @@ import org.springframework.data.domain.Sort.Direction;
import org.springframework.data.projection.TargetAware;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.MongoDBContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
/**
* Integration tests for {@link CustomerRepository} to show projection capabilities.
@@ -45,8 +47,7 @@ import org.testcontainers.utility.DockerImageName;
class CustomerRepositoryIntegrationTest {
@Container //
private static MongoDBContainer mongoDBContainer = new MongoDBContainer(
DockerImageName.parse("mongo:5.0"));
private static MongoDBContainer mongoDBContainer = MongoContainers.getDefaultContainer();
@DynamicPropertySource
static void setProperties(DynamicPropertyRegistry registry) {

View File

@@ -17,6 +17,8 @@ package example.springdata.mongodb.unwrapping;
import static org.assertj.core.api.Assertions.*;
import example.springdata.mongodb.util.MongoContainers;
import java.util.Arrays;
import org.bson.Document;
@@ -26,14 +28,14 @@ import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.data.mongo.DataMongoTest;
import org.springframework.data.mongodb.core.MongoOperations;
import com.mongodb.client.model.Filters;
import org.springframework.test.context.DynamicPropertyRegistry;
import org.springframework.test.context.DynamicPropertySource;
import org.testcontainers.containers.MongoDBContainer;
import org.testcontainers.junit.jupiter.Container;
import org.testcontainers.junit.jupiter.Testcontainers;
import org.testcontainers.utility.DockerImageName;
import com.mongodb.client.model.Filters;
/**
* Integration tests showing unwrapped/embedded document usage.
@@ -45,8 +47,7 @@ import org.testcontainers.utility.DockerImageName;
class UnwrappingIntegrationTests {
@Container //
private static MongoDBContainer mongoDBContainer = new MongoDBContainer(
DockerImageName.parse("mongo:5.0"));
private static MongoDBContainer mongoDBContainer = MongoContainers.getDefaultContainer();
@DynamicPropertySource
static void setProperties(DynamicPropertyRegistry registry) {