You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gora.apache.org by dr...@apache.org on 2020/03/21 22:39:47 UTC
[gora] 06/07: GORA-647 Update gora-benchmark/pom.xml to depends on
gora-mongodb:test-jar
This is an automated email from the ASF dual-hosted git repository.
drazzib pushed a commit to branch GORA-647-test-containers-mongo
in repository https://gitbox.apache.org/repos/asf/gora.git
commit 96179eab6149f9640198953f54447da6936678ea
Author: Damien Raude-Morvan <dr...@drazzib.com>
AuthorDate: Sat Mar 21 23:36:39 2020 +0100
GORA-647 Update gora-benchmark/pom.xml to depends on gora-mongodb:test-jar
We can import MongoContainer in GoraClientTest
(with fixed MongoDB port on localhost)
---
gora-benchmark/pom.xml | 7 +++
.../org/apache/gora/benchmark/GoraClientTest.java | 63 ++++++----------------
pom.xml | 6 +++
3 files changed, 30 insertions(+), 46 deletions(-)
diff --git a/gora-benchmark/pom.xml b/gora-benchmark/pom.xml
index d804483..c8d6e9d 100644
--- a/gora-benchmark/pom.xml
+++ b/gora-benchmark/pom.xml
@@ -187,6 +187,13 @@
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-mongodb</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
<!-- Apache CouchDB java client -->
<dependency>
<groupId>org.ektorp</groupId>
diff --git a/gora-benchmark/src/test/java/org/apache/gora/benchmark/GoraClientTest.java b/gora-benchmark/src/test/java/org/apache/gora/benchmark/GoraClientTest.java
index 321d151..b6a5cce 100644
--- a/gora-benchmark/src/test/java/org/apache/gora/benchmark/GoraClientTest.java
+++ b/gora-benchmark/src/test/java/org/apache/gora/benchmark/GoraClientTest.java
@@ -17,19 +17,9 @@
*/
package org.apache.gora.benchmark;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Properties;
-import java.util.Set;
-import java.util.Vector;
-
+import com.mongodb.ServerAddress;
import org.apache.gora.benchmark.generated.User;
+import org.apache.gora.mongodb.MongoContainer;
import org.apache.gora.store.DataStoreFactory;
import org.apache.gora.util.GoraException;
import org.junit.After;
@@ -37,22 +27,19 @@ import org.junit.Before;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-
-import com.mongodb.MongoClient;
-
-import de.flapdoodle.embed.mongo.MongodExecutable;
-import de.flapdoodle.embed.mongo.MongodProcess;
-import de.flapdoodle.embed.mongo.MongodStarter;
-import de.flapdoodle.embed.mongo.config.IMongodConfig;
-import de.flapdoodle.embed.mongo.config.MongodConfigBuilder;
-import de.flapdoodle.embed.mongo.config.Net;
-import de.flapdoodle.embed.mongo.distribution.Version;
-import de.flapdoodle.embed.process.runtime.Network;
import site.ycsb.ByteIterator;
import site.ycsb.Status;
import site.ycsb.StringByteIterator;
import site.ycsb.workloads.CoreWorkload;
+import java.io.File;
+import java.util.*;
+
+import static org.apache.gora.mongodb.MongoContainer.MONGO_PORT;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+
/**
* The Class GoraClientTest.
*/
@@ -63,9 +50,6 @@ public class GoraClientTest {
private static HashMap<String, ByteIterator> DATA_TO_INSERT;
private static HashMap<String, ByteIterator> DATA_TO_UPDATE;
private static HashMap<String, ByteIterator> INTEGER_DATA;
- private MongodExecutable mongodExecutable;
- private MongodProcess mongodProcess;
- private MongoClient mongoClient;
private static boolean isMongoDBSetupDone = false;
/**
@@ -74,28 +58,15 @@ public class GoraClientTest {
* {@link setUp() class} which is executed testUpdate after each test.
*/
private void setupMongoDBCluster() {
- MongodStarter starter = MongodStarter.getDefaultInstance();
- String bindIp = Constants.LOCALHOST;
- int port = Constants.MONGO_DEFAULT_PORT;
- IMongodConfig mongodConfig = null;
- try {
- mongodConfig = new MongodConfigBuilder().version(Version.Main.PRODUCTION)
- .net(new Net(bindIp, port, Network.localhostIsIPv6())).build();
- } catch (IOException e) {
- LOG.info("There is a problem in configuring MongoDB", e.getMessage(), e);
- }
- this.mongodExecutable = starter.prepare(mongodConfig);
try {
- LOG.info("Starting MongDB Server on port " + bindIp + ":" + port);
- this.mongodProcess = mongodExecutable.start();
- } catch (IOException e) {
- LOG.info("Cannot Start MongDB Server on port " + bindIp + ":" + port, e.getMessage(), e);
- this.mongodProcess.stop();
- this.mongodExecutable.stop();
- if (this.mongoClient != null)
- this.mongoClient.close();
+ MongoContainer mongo = new MongoContainer("3.6")
+ .withFixedExposedPort(MONGO_PORT, MONGO_PORT);
+ mongo.start();
+ ServerAddress address = mongo.getServerAddress();
+ LOG.info("Started MongoDB Server on " + address.getHost() + ":" + address.getPort());
+ } catch (Exception e) {
+ LOG.info("Cannot Start MongoDB Server {}", e.getMessage(), e);
}
- this.mongoClient = new MongoClient(bindIp, port);
}
/**
diff --git a/pom.xml b/pom.xml
index 5fbb8d3..eb8dc3d 100755
--- a/pom.xml
+++ b/pom.xml
@@ -1060,6 +1060,12 @@
<artifactId>gora-mongodb</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.gora</groupId>
+ <artifactId>gora-mongodb</artifactId>
+ <version>${project.version}</version>
+ <type>test-jar</type>
+ </dependency>
<!--Kudu DataStore dependencies -->
<dependency>