diff --git a/pom.xml b/pom.xml index 60c5428..237e9ec 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.jupiter-tools spring-test-mongo - 0.15 + 0.16 jar spring-test-mongo @@ -45,20 +45,21 @@ - [2.0.3.RELEASE, 2.3.1.RELEASE] + ${java.version} + ${java.version} + 3.7.0 UTF-8 UTF-8 1.8 + 2.7.4 5.4.2 - 5.4.2 - 1.4.2 - 2.11.0 - ${java.version} - UTF-8 - ${java.version} - 3.7.0 - 27.1-jre - 0.9.11 + 5.9.0 + 1.9.0 + 2.13.4 + 31.1-jre + 0.9.12 + 1.17.5 + 5.12.1 @@ -139,20 +140,19 @@ - org.apache.commons - commons-math3 - 3.5 + org.testcontainers + mongodb + ${testcontainers.version} - - org.testcontainers - testcontainers - 1.10.2 + net.java.dev.jna + jna + ${jna.version} commons-io commons-io - 2.4 + 2.11.0 @@ -164,7 +164,7 @@ org.projectlombok lombok - 1.16.20 + 1.18.24 test diff --git a/src/main/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbTcExtension.java b/src/main/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbTcExtension.java index d8ffa5d..852e0e2 100644 --- a/src/main/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbTcExtension.java +++ b/src/main/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbTcExtension.java @@ -3,9 +3,9 @@ import com.antkorwin.commonutils.exceptions.InternalException; import org.junit.jupiter.api.extension.Extension; import org.testcontainers.containers.GenericContainer; +import org.testcontainers.containers.MongoDBContainer; import org.testcontainers.images.builder.Transferable; -import java.io.IOException; import java.util.UUID; import static java.nio.charset.StandardCharsets.UTF_8; @@ -22,23 +22,18 @@ public class MongoDbTcExtension implements Extension { static { System.out.println("Start MongoDb testcontainers extension...\n"); - GenericContainer mongo = new GenericContainer("mongo:latest") - .withCommand("mongod --bind_ip_all --replSet rs0") - .withExposedPorts(MONGO_PORT); + MongoDBContainer mongo = new MongoDBContainer("mongo:6.0.2"); mongo.start(); - executeInContainer(mongo, "mongo --eval \"rs.initiate()\" || \"rs.status().ok\""); - executeInContainer(mongo, "until mongo --eval \"printjson(rs.isMaster())\" | grep ismaster | grep true > /dev/null 2>&1;do sleep 1;done"); - - System.setProperty("spring.data.mongodb.host", mongo.getContainerIpAddress()); + System.setProperty("spring.data.mongodb.host", mongo.getHost()); System.setProperty("spring.data.mongodb.port", mongo.getMappedPort(MONGO_PORT).toString()); - System.setProperty("spring.data.mongodb.replicaSet", "rs0"); + System.setProperty("spring.data.mongodb.replicaSet", "docker-rs"); } private static void executeInContainer(GenericContainer container, String command) { byte[] contentBytes = command.getBytes(UTF_8); - String shellFilePath = "/etc/mongo-" + UUID.randomUUID().toString(); + String shellFilePath = "/etc/mongo-" + UUID.randomUUID(); try { container.copyFileToContainer(Transferable.of(contentBytes), shellFilePath); diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestIT.java b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestIT.java index 1901542..ffb61e9 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestIT.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestIT.java @@ -80,10 +80,10 @@ void importWithDateValues() { assertThat(foos).hasSize(2); assertThat(foos.get(0).getId()).isEqualTo("1"); - assertThat(foos.get(0).getTime()).isAfterOrEqualsTo(before); + assertThat(foos.get(0).getTime()).isAfterOrEqualTo(before); assertThat(foos.get(1).getId()).isEqualTo("2"); - assertThat(foos.get(1).getTime()).isAfterOrEqualsTo(plus3Days); + assertThat(foos.get(1).getTime()).isAfterOrEqualTo(plus3Days); } @Test @@ -96,7 +96,7 @@ void importWithGroovyDataValues() { List foos = mongoTemplate.findAll(Foo.class); assertThat(foos).hasSize(1); assertThat(foos.get(0).getId()).isEqualTo("8"); - assertThat(foos.get(0).getTime()).isAfterOrEqualsTo(before); + assertThat(foos.get(0).getTime()).isAfterOrEqualTo(before); assertThat(foos.get(0).getCounter()).isEqualTo(55); } diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestTest.java b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestTest.java index 0375700..704156c 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestTest.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/MongoDbTestTest.java @@ -174,10 +174,10 @@ void dynamicDateValue() { verify(mongoTemplate, times(2)).save(captor.capture()); Date now = captor.getAllValues().get(0).getTime(); - Assertions.assertThat(now).isAfterOrEqualsTo(before); + Assertions.assertThat(now).isAfterOrEqualTo(before); Date plus = captor.getAllValues().get(1).getTime(); - Assertions.assertThat(plus).isAfterOrEqualsTo(plus3days); + Assertions.assertThat(plus).isAfterOrEqualTo(plus3days); } @Test @@ -191,7 +191,7 @@ void dynamicGroovy() { verify(mongoTemplate).save(captor.capture()); Foo foo = captor.getValue(); assertThat(foo.getId()).isEqualTo("8"); - assertThat(foo.getTime()).isAfterOrEqualsTo(before); + assertThat(foo.getTime()).isAfterOrEqualTo(before); assertThat(foo.getCounter()).isEqualTo(55); } diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DateDynamicValueTest.java b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DateDynamicValueTest.java index 8e18b66..091d416 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DateDynamicValueTest.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DateDynamicValueTest.java @@ -50,28 +50,28 @@ class EvaluateTests { void currentTime() { Date before = new Date(); Date now = (Date) new DateDynamicValue().evaluate("date:[NOW]"); - assertThat(now).isAfterOrEqualsTo(before); + assertThat(now).isAfterOrEqualTo(before); } @Test void plus3Minutes() { Date expected = new Date(new Date().getTime() + TimeUnit.MINUTES.toMillis(3)); Date evaluate = (Date) new DateDynamicValue().evaluate("date:[NOW]+3(MINUTES)"); - assertThat(evaluate).isAfterOrEqualsTo(expected); + assertThat(evaluate).isAfterOrEqualTo(expected); } @Test void spaceBetweenPrefix() { Date before = new Date(); Date now = (Date) new DateDynamicValue().evaluate("date: [NOW]"); - assertThat(now).isAfterOrEqualsTo(before); + assertThat(now).isAfterOrEqualTo(before); } @Test void spaceBetweenDirectionAndTimeUnit() { Date expected = new Date(new Date().getTime() + TimeUnit.MINUTES.toMillis(3)); Date evaluate = (Date) new DateDynamicValue().evaluate("date: [NOW] + 3 (MINUTES)"); - assertThat(evaluate).isAfterOrEqualsTo(expected); + assertThat(evaluate).isAfterOrEqualTo(expected); } } diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DynamicDataSetTest.java b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DynamicDataSetTest.java index acad279..e702a59 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DynamicDataSetTest.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/internal/expect/dynamic/value/DynamicDataSetTest.java @@ -159,8 +159,8 @@ void dateTime() { Date now = (Date) dynamicDataSet.read().get("test").get(0).get("now"); Date tomorrow = (Date) dynamicDataSet.read().get("test").get(0).get("tomorrow"); - assertThat(now).isAfterOrEqualsTo(before); - assertThat(tomorrow).isAfterOrEqualsTo(new Date(before.getTime() + TimeUnit.MINUTES.toMillis(3))); + assertThat(now).isAfterOrEqualTo(before); + assertThat(tomorrow).isAfterOrEqualTo(new Date(before.getTime() + TimeUnit.MINUTES.toMillis(3))); String dynamic = new JsonExport(dynamicDataSet).read(); System.out.println(dynamic); diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/junit4/MongoDbRuleExpectedIT.java b/src/test/java/com/jupiter/tools/spring/test/mongo/junit4/MongoDbRuleExpectedIT.java index bc6b0a5..a3b422e 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/junit4/MongoDbRuleExpectedIT.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/junit4/MongoDbRuleExpectedIT.java @@ -128,7 +128,7 @@ void readOnlyFailTestInTheTestKitStyle() { .selectors(selectMethod(RealTests.class, testMethod)) // Act .execute() - .tests() + .testEvents() // Assert .assertStatistics(stats -> stats.started(1) .succeeded(0) diff --git a/src/test/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbExtensionExpectedDataSetIT.java b/src/test/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbExtensionExpectedDataSetIT.java index 0ed4308..b15ca2f 100644 --- a/src/test/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbExtensionExpectedDataSetIT.java +++ b/src/test/java/com/jupiter/tools/spring/test/mongo/junit5/MongoDbExtensionExpectedDataSetIT.java @@ -1,34 +1,28 @@ package com.jupiter.tools.spring.test.mongo.junit5; -import java.util.Date; - import com.jupiter.tools.spring.test.mongo.Bar; import com.jupiter.tools.spring.test.mongo.Foo; import com.jupiter.tools.spring.test.mongo.annotation.ExpectedMongoDataSet; import com.jupiter.tools.spring.test.mongo.annotation.MongoDataSet; import com.jupiter.tools.spring.test.mongo.idea.skip.test.IdeaSkipTest; -import org.junit.jupiter.api.Disabled; -import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.condition.DisabledIfSystemProperty; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.platform.launcher.LauncherDiscoveryRequest; import org.junit.platform.launcher.core.LauncherFactory; import org.junit.platform.launcher.listeners.SummaryGeneratingListener; import org.junit.platform.launcher.listeners.TestExecutionSummary; import org.junit.platform.testkit.engine.EngineTestKit; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.test.context.junit.jupiter.SpringExtension; +import java.util.Date; + import static org.assertj.core.api.Assertions.assertThat; import static org.junit.platform.engine.discovery.DiscoverySelectors.selectMethod; import static org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder.request; -import static org.junit.platform.testkit.engine.EventConditions.event; -import static org.junit.platform.testkit.engine.EventConditions.finishedWithFailure; -import static org.junit.platform.testkit.engine.EventConditions.test; +import static org.junit.platform.testkit.engine.EventConditions.*; import static org.junit.platform.testkit.engine.TestExecutionResultConditions.instanceOf; import static org.junit.platform.testkit.engine.TestExecutionResultConditions.message; @@ -134,7 +128,7 @@ void readOnlyFailTestInTheTestKitStyle() { .selectors(selectMethod(RealTests.class, testMethod)) // Act .execute() - .tests() + .testEvents() // Assert .assertStatistics(stats -> stats.started(1) .succeeded(0)