deps: Upgrade mongodb to latest and fix tests. (#2920)

This commit is contained in:
k1w1dev
2024-04-18 05:52:13 +12:00
committed by GitHub
parent 43db34a394
commit a6c2e4ad91
2 changed files with 28 additions and 47 deletions
+2 -2
View File
@@ -46,7 +46,7 @@
<dependency>
<groupId>de.flapdoodle.embed</groupId>
<artifactId>de.flapdoodle.embed.mongo</artifactId>
<version>3.0.0</version>
<version>4.12.6</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -77,4 +77,4 @@
</plugin>
</plugins>
</build>
</project>
</project>
@@ -26,23 +26,19 @@ package com.iluwatar.hexagonal.banking;
import static org.junit.jupiter.api.Assertions.assertEquals;
import com.mongodb.MongoClientSettings;
import com.mongodb.ServerAddress;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;
import de.flapdoodle.embed.mongo.MongodExecutable;
import de.flapdoodle.embed.mongo.MongodProcess;
import de.flapdoodle.embed.mongo.MongodStarter;
import de.flapdoodle.embed.mongo.config.MongodConfig;
import de.flapdoodle.embed.mongo.commands.ServerAddress;
import de.flapdoodle.embed.mongo.distribution.Version;
import de.flapdoodle.embed.mongo.transitions.Mongod;
import de.flapdoodle.embed.mongo.transitions.RunningMongodProcess;
import de.flapdoodle.reverse.TransitionWalker;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import java.util.List;
/**
* Tests for Mongo banking adapter
*/
@@ -50,40 +46,40 @@ class MongoBankTest {
private static final String TEST_DB = "lotteryDBTest";
private static final String TEST_ACCOUNTS_COLLECTION = "testAccounts";
private static final String TEST_HOST = "localhost";
private static final int TEST_PORT = 27017;
private static MongodExecutable mongodExe;
private static MongodProcess mongodProcess;
private static MongoClient mongoClient;
private static MongoDatabase mongoDatabase;
private MongoBank mongoBank;
private static TransitionWalker.ReachedState<RunningMongodProcess> mongodProcess;
private static ServerAddress serverAddress;
@BeforeAll
static void setUp() throws Exception {
MongodStarter starter = MongodStarter.getDefaultInstance();
MongodConfig mongodConfig = buildMongoConfig();
mongoClient = buildMongoClient();
mongodExe = starter.prepare(mongodConfig);
mongodProcess = mongodExe.start();
static void setUp() {
mongodProcess = Mongod.instance().start(Version.Main.V7_0);
serverAddress = mongodProcess.current().getServerAddress();
mongoClient = MongoClients.create("mongodb://" + serverAddress.toString());
mongoClient.startSession();
mongoDatabase = mongoClient.getDatabase(TEST_DB);
}
@BeforeEach
void init() {
System.setProperty("mongo-host", TEST_HOST);
System.setProperty("mongo-port", String.valueOf(TEST_PORT));
mongoDatabase.drop();
mongoBank = new MongoBank(mongoDatabase.getName(), TEST_ACCOUNTS_COLLECTION);
}
@AfterAll
static void tearDown() {
mongoClient.close();
mongodProcess.stop();
mongodExe.stop();
mongodProcess.close();
}
@BeforeEach
void init() {
System.setProperty("mongo-host", serverAddress.getHost());
System.setProperty("mongo-port", String.valueOf(serverAddress.getPort()));
mongoDatabase.drop();
mongoBank = new MongoBank(mongoDatabase.getName(), TEST_ACCOUNTS_COLLECTION);
}
@Test
@@ -101,19 +97,4 @@ class MongoBankTest {
assertEquals(1, mongoBank.getFunds("000-000"));
assertEquals(9, mongoBank.getFunds("111-111"));
}
private static MongodConfig buildMongoConfig() {
return MongodConfig.builder()
.version(Version.Main.PRODUCTION)
.net(new de.flapdoodle.embed.mongo.config.Net(TEST_HOST, TEST_PORT, true))
.build();
}
private static MongoClient buildMongoClient() {
return MongoClients.create(
MongoClientSettings.builder()
.applyToClusterSettings(builder -> builder.hosts(List.of(new ServerAddress(TEST_HOST, TEST_PORT))))
.build()
);
}
}
}