Repository: incubator-rya Updated Branches: refs/heads/master ef5e2bc15 -> c06c1073c
RYA-174 Adding Mongo Random Port and Cleanup in Test Closes #117 Project: http://git-wip-us.apache.org/repos/asf/incubator-rya/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-rya/commit/f3b1680b Tree: http://git-wip-us.apache.org/repos/asf/incubator-rya/tree/f3b1680b Diff: http://git-wip-us.apache.org/repos/asf/incubator-rya/diff/f3b1680b Branch: refs/heads/master Commit: f3b1680b4a98ae4712c21d6c17f4a62b11ba5b8e Parents: ef5e2bc Author: Aaron Mihalik <[email protected]> Authored: Wed Oct 19 19:34:04 2016 -0400 Committer: Aaron Mihalik <[email protected]> Committed: Thu Oct 20 17:52:17 2016 -0400 ---------------------------------------------------------------------- dao/mongodb.rya/pom.xml | 14 ++- .../rya/mongodb/MongoDBQueryEngineTest.java | 12 +- .../org/apache/rya/mongodb/MongoDBRyaDAOIT.java | 20 +--- .../apache/rya/mongodb/MongoDBRyaDAOTest.java | 21 ++-- .../apache/rya/mongodb/MongoRyaTestBase.java | 118 +++++++++++++++++++ .../instance/MongoRyaDetailsRepositoryIT.java | 48 ++------ extras/indexing/pom.xml | 9 +- .../mongo/MongoFreeTextIndexerTest.java | 35 +++--- .../mongo/MongoTemporalIndexerTest.java | 25 ++-- extras/rya.geoindexing/pom.xml | 8 +- .../indexing/mongo/MongoGeoIndexerSfTest.java | 26 ++-- .../rya/indexing/mongo/MongoGeoIndexerTest.java | 22 ++-- 12 files changed, 219 insertions(+), 139 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/pom.xml ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/pom.xml b/dao/mongodb.rya/pom.xml index 40554c0..1b04d23 100644 --- a/dao/mongodb.rya/pom.xml +++ b/dao/mongodb.rya/pom.xml @@ -32,9 +32,21 @@ under the License. <build> <plugins> <plugin> + <!-- generate the test jar as well so it can be reused by dependent tools. + TODO this is messy. in the future, classes that provide this functionality + should be decoupled into reusable frameworks. --> + <artifactId>maven-jar-plugin</artifactId> + <executions> + <execution> + <goals> + <goal>test-jar</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> - <version>2.19.1</version> <executions> <execution> <goals> http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineTest.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineTest.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineTest.java index ebfb1ff..c6baf1f 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineTest.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineTest.java @@ -23,14 +23,12 @@ import java.util.Collection; import java.util.Map; import java.util.Map.Entry; -import info.aduna.iteration.CloseableIteration; +import org.apache.hadoop.conf.Configuration; import org.apache.rya.api.RdfCloudTripleStoreConfiguration; import org.apache.rya.api.RdfCloudTripleStoreUtils; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; import org.apache.rya.api.domain.RyaURI; - -import org.apache.hadoop.conf.Configuration; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -39,12 +37,10 @@ import org.openrdf.query.BindingSet; import org.openrdf.query.impl.MapBindingSet; import com.google.common.collect.Lists; -import com.mongodb.MongoClient; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; +import info.aduna.iteration.CloseableIteration; -public class MongoDBQueryEngineTest { +public class MongoDBQueryEngineTest extends MongoRyaTestBase { // private dao; // private configuration; @@ -55,14 +51,12 @@ public class MongoDBQueryEngineTest { @Before public void setUp() throws Exception { // Set up Mongo/Rya - MongodForTestsFactory testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); Configuration conf = new Configuration(); conf.set(MongoDBRdfConfiguration.USE_TEST_MONGO, "true"); conf.set(MongoDBRdfConfiguration.MONGO_DB_NAME, "test"); conf.set(MongoDBRdfConfiguration.MONGO_COLLECTION_PREFIX, "rya_"); conf.set(RdfCloudTripleStoreConfiguration.CONF_TBL_PREFIX, "rya_"); configuration = new MongoDBRdfConfiguration(conf); - MongoClient mongoClient = testsFactory.newMongo(); int port = mongoClient.getServerAddressList().get(0).getPort(); configuration.set(MongoDBRdfConfiguration.MONGO_INSTANCE_PORT, Integer.toString(port)); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOIT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOIT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOIT.java index 59904db..b48f1eb 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOIT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOIT.java @@ -25,40 +25,32 @@ import static org.junit.Assert.assertTrue; import java.io.IOException; import org.apache.hadoop.conf.Configuration; +import org.apache.rya.api.RdfCloudTripleStoreConfiguration; +import org.apache.rya.api.domain.RyaStatement; +import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; +import org.apache.rya.api.domain.RyaURI; +import org.apache.rya.api.persist.RyaDAOException; import org.junit.Before; import org.junit.Test; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBObject; -import com.mongodb.MongoClient; import com.mongodb.MongoException; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; -import org.apache.rya.api.RdfCloudTripleStoreConfiguration; -import org.apache.rya.api.domain.RyaStatement; -import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaURI; -import org.apache.rya.api.persist.RyaDAOException; - -public class MongoDBRyaDAOIT { +public class MongoDBRyaDAOIT extends MongoRyaTestBase { - private MongodForTestsFactory testsFactory; private MongoDBRyaDAO dao; private MongoDBRdfConfiguration configuration; - private MongoClient mongoClient; @Before public void setUp() throws IOException, RyaDAOException{ - testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); final Configuration conf = new Configuration(); conf.set(MongoDBRdfConfiguration.USE_TEST_MONGO, "true"); conf.set(MongoDBRdfConfiguration.MONGO_DB_NAME, "test"); conf.set(MongoDBRdfConfiguration.MONGO_COLLECTION_PREFIX, "rya_"); conf.set(RdfCloudTripleStoreConfiguration.CONF_TBL_PREFIX, "rya_"); configuration = new MongoDBRdfConfiguration(conf); - mongoClient = testsFactory.newMongo(); final int port = mongoClient.getServerAddressList().get(0).getPort(); configuration.set(MongoDBRdfConfiguration.MONGO_INSTANCE_PORT, Integer.toString(port)); dao = new MongoDBRyaDAO(configuration, mongoClient); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOTest.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOTest.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOTest.java index f9fdb04..5b19d5a 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOTest.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAOTest.java @@ -23,44 +23,37 @@ import static org.junit.Assert.assertEquals; import java.io.IOException; import org.apache.hadoop.conf.Configuration; +import org.apache.rya.api.RdfCloudTripleStoreConfiguration; +import org.apache.rya.api.domain.RyaStatement; +import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; +import org.apache.rya.api.domain.RyaURI; +import org.apache.rya.api.persist.RyaDAOException; import org.junit.Before; import org.junit.Test; import com.mongodb.DB; import com.mongodb.DBCollection; -import com.mongodb.MongoClient; import com.mongodb.MongoException; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; -import org.apache.rya.api.RdfCloudTripleStoreConfiguration; -import org.apache.rya.api.domain.RyaStatement; -import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaURI; -import org.apache.rya.api.persist.RyaDAOException; - -public class MongoDBRyaDAOTest { +public class MongoDBRyaDAOTest extends MongoRyaTestBase { - private MongodForTestsFactory testsFactory; private MongoDBRyaDAO dao; private MongoDBRdfConfiguration configuration; - private MongoClient mongoClient; @Before public void setUp() throws IOException, RyaDAOException{ - testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); final Configuration conf = new Configuration(); conf.set(MongoDBRdfConfiguration.USE_TEST_MONGO, "true"); conf.set(MongoDBRdfConfiguration.MONGO_DB_NAME, "test"); conf.set(MongoDBRdfConfiguration.MONGO_COLLECTION_PREFIX, "rya_"); conf.set(RdfCloudTripleStoreConfiguration.CONF_TBL_PREFIX, "rya_"); configuration = new MongoDBRdfConfiguration(conf); - mongoClient = testsFactory.newMongo(); final int port = mongoClient.getServerAddressList().get(0).getPort(); configuration.set(MongoDBRdfConfiguration.MONGO_INSTANCE_PORT, ""+port); dao = new MongoDBRyaDAO(configuration, mongoClient); } + @Test public void testDeleteWildcard() throws RyaDAOException { final RyaStatementBuilder builder = new RyaStatementBuilder(); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaTestBase.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaTestBase.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaTestBase.java new file mode 100644 index 0000000..340d5ae --- /dev/null +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaTestBase.java @@ -0,0 +1,118 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.rya.mongodb; + +import java.io.IOException; +import java.net.ServerSocket; +import java.net.UnknownHostException; + +import org.apache.rya.api.persist.RyaDAOException; +import org.junit.After; +import org.junit.Before; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.mongodb.MongoClient; +import com.mongodb.MongoException; +import com.mongodb.ServerAddress; + +import de.flapdoodle.embed.mongo.Command; +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.config.RuntimeConfigBuilder; +import de.flapdoodle.embed.mongo.distribution.IFeatureAwareVersion; +import de.flapdoodle.embed.mongo.distribution.Version; + +public class MongoRyaTestBase { + + protected RyaMongodForTestsFactory testsFactory; + protected MongoClient mongoClient; + + @Before + public void MongoRyaTestBaseSetUp() throws IOException, RyaDAOException { + testsFactory = RyaMongodForTestsFactory.with(Version.Main.PRODUCTION); + mongoClient = testsFactory.newMongo(); + } + + @After + public void MongoRyaTestBaseAfter() throws Exception { + if (mongoClient != null) { + mongoClient.close(); + } + if (testsFactory != null) { + testsFactory.shutdown(); + } + } + + private static class RyaMongodForTestsFactory { + private static Logger logger = LoggerFactory.getLogger(RyaMongodForTestsFactory.class.getName()); + + public static RyaMongodForTestsFactory with(final IFeatureAwareVersion version) throws IOException { + return new RyaMongodForTestsFactory(version); + } + + private final MongodExecutable mongodExecutable; + private final MongodProcess mongodProcess; + + /** + * Create the testing utility using the specified version of MongoDB. + * + * @param version + * version of MongoDB. + */ + private RyaMongodForTestsFactory(final IFeatureAwareVersion version) throws IOException { + final MongodStarter runtime = MongodStarter.getInstance(new RuntimeConfigBuilder().defaultsWithLogger(Command.MongoD, logger).build()); + mongodExecutable = runtime.prepare(newMongodConfig(version)); + mongodProcess = mongodExecutable.start(); + } + + private IMongodConfig newMongodConfig(final IFeatureAwareVersion version) throws UnknownHostException, IOException { + Net net = new Net(findRandomOpenPortOnAllLocalInterfaces(), false); + return new MongodConfigBuilder().version(version).net(net).build(); + } + + private int findRandomOpenPortOnAllLocalInterfaces() throws IOException { + try (ServerSocket socket = new ServerSocket(0);) { + return socket.getLocalPort(); + } + } + + /** + * Creates a new Mongo connection. + * + * @throws MongoException + * @throws UnknownHostException + */ + private MongoClient newMongo() throws UnknownHostException, MongoException { + return new MongoClient(new ServerAddress(mongodProcess.getConfig().net().getServerAddress(), mongodProcess.getConfig().net().getPort())); + } + + /** + * Cleans up the resources created by the utility. + */ + public void shutdown() { + mongodProcess.stop(); + mongodExecutable.stop(); + } + } +} http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/instance/MongoRyaDetailsRepositoryIT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/instance/MongoRyaDetailsRepositoryIT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/instance/MongoRyaDetailsRepositoryIT.java index 9cb8917..86a8965 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/instance/MongoRyaDetailsRepositoryIT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/instance/MongoRyaDetailsRepositoryIT.java @@ -23,19 +23,8 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import java.io.IOException; import java.util.Date; -import org.junit.AfterClass; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; - -import com.google.common.base.Optional; -import com.mongodb.MongoClient; -import com.mongodb.MongoException; - -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; import org.apache.rya.api.instance.RyaDetails; import org.apache.rya.api.instance.RyaDetails.EntityCentricIndexDetails; import org.apache.rya.api.instance.RyaDetails.FreeTextIndexDetails; @@ -52,29 +41,16 @@ import org.apache.rya.api.instance.RyaDetailsRepository.AlreadyInitializedExcept import org.apache.rya.api.instance.RyaDetailsRepository.ConcurrentUpdateException; import org.apache.rya.api.instance.RyaDetailsRepository.NotInitializedException; import org.apache.rya.api.instance.RyaDetailsRepository.RyaDetailsRepositoryException; +import org.apache.rya.mongodb.MongoRyaTestBase; +import org.junit.Test; + +import com.google.common.base.Optional; /** * Tests the methods of {@link AccumuloRyaDetailsRepository} by using a {@link MiniAccumuloCluster}. */ -public class MongoRyaDetailsRepositoryIT { +public class MongoRyaDetailsRepositoryIT extends MongoRyaTestBase { - private static MongoClient client = null; - - @BeforeClass - public static void startMiniAccumulo() throws MongoException, IOException { - final MongodForTestsFactory mongoFactory = new MongodForTestsFactory(); - client = mongoFactory.newMongo(); - } - - @Before - public void clearLastTest() { - client.dropDatabase("testInstance"); - } - - @AfterClass - public static void stopMiniAccumulo() throws IOException, InterruptedException { - client.close(); - } @Test public void initializeAndGet() throws AlreadyInitializedException, RyaDetailsRepositoryException { @@ -105,7 +81,7 @@ public class MongoRyaDetailsRepositoryIT { .build(); // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, instanceName); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, instanceName); // Initialize the repository repo.initialize(details); @@ -146,7 +122,7 @@ public class MongoRyaDetailsRepositoryIT { .build(); // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, instanceName); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, instanceName); // Initialize the repository repo.initialize(details); @@ -158,7 +134,7 @@ public class MongoRyaDetailsRepositoryIT { @Test(expected = NotInitializedException.class) public void getRyaInstance_notInitialized() throws NotInitializedException, RyaDetailsRepositoryException { // Setup the repository that will be tested using a mock instance of Accumulo. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, "testInstance"); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, "testInstance"); // Try to fetch the details from the uninitialized repository. repo.getRyaInstanceDetails(); @@ -193,7 +169,7 @@ public class MongoRyaDetailsRepositoryIT { .build(); // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, "testInstance"); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, "testInstance"); // Initialize the repository repo.initialize(details); @@ -205,7 +181,7 @@ public class MongoRyaDetailsRepositoryIT { @Test public void isInitialized_false() throws RyaDetailsRepositoryException { // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, "testInstance"); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, "testInstance"); // Ensure the repository reports that is has not been initialized. assertFalse( repo.isInitialized() ); @@ -240,7 +216,7 @@ public class MongoRyaDetailsRepositoryIT { .build(); // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, "testInstance"); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, "testInstance"); // Initialize the repository repo.initialize(details); @@ -287,7 +263,7 @@ public class MongoRyaDetailsRepositoryIT { .build(); // Setup the repository that will be tested using a mock instance of MongoDB. - final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(client, "testInstance"); + final RyaDetailsRepository repo = new MongoRyaInstanceDetailsRepository(mongoClient, "testInstance"); // Initialize the repository repo.initialize(details); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/indexing/pom.xml ---------------------------------------------------------------------- diff --git a/extras/indexing/pom.xml b/extras/indexing/pom.xml index 32cdb10..650c9f7 100644 --- a/extras/indexing/pom.xml +++ b/extras/indexing/pom.xml @@ -32,7 +32,6 @@ <dependency> <groupId>org.apache.accumulo</groupId> <artifactId>accumulo-minicluster</artifactId> - <version>${accumulo.version}</version> <scope>test</scope> </dependency> @@ -104,6 +103,14 @@ <groupId>org.apache.rya</groupId> <artifactId>accumulo.rya</artifactId> <version>${project.version}</version> + <scope>test</scope> + <type>test-jar</type> + </dependency> + <dependency> + <groupId>org.apache.rya</groupId> + <artifactId>mongodb.rya</artifactId> + <version>${project.version}</version> + <scope>test</scope> <type>test-jar</type> </dependency> </dependencies> http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerTest.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerTest.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerTest.java index 0dac019..637610d 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerTest.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerTest.java @@ -21,6 +21,17 @@ package org.apache.rya.indexing.mongo; import java.util.HashSet; import java.util.Set; +import org.apache.rya.accumulo.AccumuloRdfConfiguration; +import org.apache.rya.api.domain.RyaStatement; +import org.apache.rya.api.domain.RyaType; +import org.apache.rya.api.domain.RyaURI; +import org.apache.rya.api.resolver.RdfToRyaConversions; +import org.apache.rya.api.resolver.RyaToRdfConversions; +import org.apache.rya.indexing.StatementConstraints; +import org.apache.rya.indexing.accumulo.ConfigUtils; +import org.apache.rya.indexing.mongodb.freetext.MongoFreeTextIndexer; +import org.apache.rya.mongodb.MongoDBRdfConfiguration; +import org.apache.rya.mongodb.MongoRyaTestBase; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -33,27 +44,13 @@ import org.openrdf.model.impl.ValueFactoryImpl; import org.openrdf.model.vocabulary.RDFS; import com.google.common.collect.Sets; -import com.mongodb.MongoClient; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; import info.aduna.iteration.CloseableIteration; -import org.apache.rya.accumulo.AccumuloRdfConfiguration; -import org.apache.rya.api.domain.RyaStatement; -import org.apache.rya.api.domain.RyaType; -import org.apache.rya.api.domain.RyaURI; -import org.apache.rya.api.resolver.RdfToRyaConversions; -import org.apache.rya.api.resolver.RyaToRdfConversions; -import org.apache.rya.indexing.StatementConstraints; -import org.apache.rya.indexing.accumulo.ConfigUtils; -import org.apache.rya.indexing.mongodb.freetext.MongoFreeTextIndexer; -import org.apache.rya.mongodb.MongoDBRdfConfiguration; -public class MongoFreeTextIndexerTest { +public class MongoFreeTextIndexerTest extends MongoRyaTestBase { private static final StatementConstraints EMPTY_CONSTRAINTS = new StatementConstraints(); AccumuloRdfConfiguration conf; - MongoClient mongoClient; @Before public void before() throws Exception { @@ -63,11 +60,9 @@ public class MongoFreeTextIndexerTest { conf.set(MongoDBRdfConfiguration.MONGO_DB_NAME, "test"); conf.set(MongoDBRdfConfiguration.MONGO_COLLECTION_PREFIX, "rya_"); conf.setTablePrefix("another_"); - final MongodForTestsFactory testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); - mongoClient = testsFactory.newMongo(); - } - - @Test + } + + @Test public void testSearch() throws Exception { try (MongoFreeTextIndexer f = new MongoFreeTextIndexer()) { f.initIndexer(conf, mongoClient); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoTemporalIndexerTest.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoTemporalIndexerTest.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoTemporalIndexerTest.java index 7b65c73..9e81c90 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoTemporalIndexerTest.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoTemporalIndexerTest.java @@ -29,9 +29,17 @@ import java.io.IOException; import java.security.NoSuchAlgorithmException; import java.util.Arrays; import java.util.HashSet; + import org.apache.accumulo.core.client.TableExistsException; import org.apache.accumulo.core.client.TableNotFoundException; -import org.apache.hadoop.conf.Configuration; +import org.apache.rya.indexing.StatementConstraints; +import org.apache.rya.indexing.TemporalInstant; +import org.apache.rya.indexing.TemporalInstantRfc3339; +import org.apache.rya.indexing.TemporalInterval; +import org.apache.rya.indexing.accumulo.ConfigUtils; +import org.apache.rya.indexing.mongodb.temporal.MongoTemporalIndexer; +import org.apache.rya.mongodb.MongoDBRdfConfiguration; +import org.apache.rya.mongodb.MongoRyaTestBase; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; @@ -48,19 +56,10 @@ import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; -import com.mongodb.MongoClient; import com.mongodb.MongoException; +import com.mongodb.MongoSecurityException; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; import info.aduna.iteration.CloseableIteration; -import org.apache.rya.indexing.StatementConstraints; -import org.apache.rya.indexing.TemporalInstant; -import org.apache.rya.indexing.TemporalInstantRfc3339; -import org.apache.rya.indexing.TemporalInterval; -import org.apache.rya.indexing.accumulo.ConfigUtils; -import org.apache.rya.indexing.mongodb.temporal.MongoTemporalIndexer; -import org.apache.rya.mongodb.MongoDBRdfConfiguration; /** * JUnit tests for TemporalIndexer and it's implementation MongoTemporalIndexer @@ -82,7 +81,7 @@ import org.apache.rya.mongodb.MongoDBRdfConfiguration; * And a few more. * */ -public final class MongoTemporalIndexerTest { +public final class MongoTemporalIndexerTest extends MongoRyaTestBase { MongoDBRdfConfiguration conf; MongoTemporalIndexer tIndexer; DBCollection collection; @@ -190,8 +189,6 @@ public final class MongoTemporalIndexerTest { + URI_PROPERTY_CIRCA + "," + URI_PROPERTY_EVENT_TIME); - final MongodForTestsFactory testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); - final MongoClient mongoClient = testsFactory.newMongo(); tIndexer = new MongoTemporalIndexer(); tIndexer.initIndexer(conf, mongoClient); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/rya.geoindexing/pom.xml ---------------------------------------------------------------------- diff --git a/extras/rya.geoindexing/pom.xml b/extras/rya.geoindexing/pom.xml index 1c2040a..9221026 100644 --- a/extras/rya.geoindexing/pom.xml +++ b/extras/rya.geoindexing/pom.xml @@ -40,7 +40,6 @@ <dependency> <groupId>org.apache.accumulo</groupId> <artifactId>accumulo-minicluster</artifactId> - <version>${accumulo.version}</version> <scope>test</scope> </dependency> @@ -110,6 +109,13 @@ <type>test-jar</type> </dependency> <dependency> + <groupId>org.apache.rya</groupId> + <artifactId>mongodb.rya</artifactId> + <version>${project.version}</version> + <scope>test</scope> + <type>test-jar</type> + </dependency> + <dependency> <groupId>org.geotools.xsd</groupId> <artifactId>gt-xsd-gml3</artifactId> <version>${geotools.version}</version> http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerSfTest.java ---------------------------------------------------------------------- diff --git a/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerSfTest.java b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerSfTest.java index df4b4a1..057b6c7 100644 --- a/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerSfTest.java +++ b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerSfTest.java @@ -23,6 +23,16 @@ import java.util.Map; import java.util.Set; import java.util.UUID; +import org.apache.rya.api.domain.RyaStatement; +import org.apache.rya.api.resolver.RdfToRyaConversions; +import org.apache.rya.api.resolver.RyaToRdfConversions; +import org.apache.rya.indexing.GeoConstants; +import org.apache.rya.indexing.OptionalConfigUtils; +import org.apache.rya.indexing.StatementConstraints; +import org.apache.rya.indexing.accumulo.ConfigUtils; +import org.apache.rya.indexing.mongodb.geo.MongoGeoIndexer; +import org.apache.rya.mongodb.MongoDBRdfConfiguration; +import org.apache.rya.mongodb.MongoRyaTestBase; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -36,7 +46,6 @@ import org.openrdf.model.impl.ValueFactoryImpl; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import com.mongodb.MongoClient; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.Geometry; import com.vividsolutions.jts.geom.GeometryFactory; @@ -47,23 +56,12 @@ import com.vividsolutions.jts.geom.Polygon; import com.vividsolutions.jts.geom.PrecisionModel; import com.vividsolutions.jts.geom.impl.PackedCoordinateSequence; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; import info.aduna.iteration.CloseableIteration; -import org.apache.rya.api.domain.RyaStatement; -import org.apache.rya.api.resolver.RdfToRyaConversions; -import org.apache.rya.api.resolver.RyaToRdfConversions; -import org.apache.rya.indexing.GeoConstants; -import org.apache.rya.indexing.OptionalConfigUtils; -import org.apache.rya.indexing.StatementConstraints; -import org.apache.rya.indexing.accumulo.ConfigUtils; -import org.apache.rya.indexing.mongodb.geo.MongoGeoIndexer; -import org.apache.rya.mongodb.MongoDBRdfConfiguration; /** * Tests all of the "simple functions" of the geoindexer. */ -public class MongoGeoIndexerSfTest { +public class MongoGeoIndexerSfTest extends MongoRyaTestBase { private MongoDBRdfConfiguration conf; private static GeometryFactory gf = new GeometryFactory(new PrecisionModel(), 4326); private static MongoGeoIndexer g; @@ -118,8 +116,6 @@ public class MongoGeoIndexerSfTest { conf.set(OptionalConfigUtils.USE_GEO, "true"); conf.setTablePrefix("rya_"); - final MongodForTestsFactory testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); - final MongoClient mongoClient = testsFactory.newMongo(); g = new MongoGeoIndexer(); g.initIndexer(conf, mongoClient); g.storeStatement(statement(A)); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/f3b1680b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerTest.java ---------------------------------------------------------------------- diff --git a/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerTest.java b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerTest.java index 71a5db7..08d15a6 100644 --- a/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerTest.java +++ b/extras/rya.geoindexing/src/test/java/org/apache/rya/indexing/mongo/MongoGeoIndexerTest.java @@ -27,6 +27,13 @@ import java.util.Collections; import java.util.HashSet; import java.util.Set; +import org.apache.rya.indexing.GeoConstants; +import org.apache.rya.indexing.OptionalConfigUtils; +import org.apache.rya.indexing.StatementConstraints; +import org.apache.rya.indexing.accumulo.ConfigUtils; +import org.apache.rya.indexing.mongodb.geo.MongoGeoIndexer; +import org.apache.rya.mongodb.MongoDBRdfConfiguration; +import org.apache.rya.mongodb.MongoRyaTestBase; import org.junit.Assert; import org.junit.Before; import org.junit.Test; @@ -40,7 +47,6 @@ import org.openrdf.model.impl.StatementImpl; import org.openrdf.model.impl.ValueFactoryImpl; import com.google.common.collect.Sets; -import com.mongodb.MongoClient; import com.vividsolutions.jts.geom.Coordinate; import com.vividsolutions.jts.geom.GeometryFactory; import com.vividsolutions.jts.geom.LinearRing; @@ -49,22 +55,13 @@ import com.vividsolutions.jts.geom.Polygon; import com.vividsolutions.jts.geom.PrecisionModel; import com.vividsolutions.jts.geom.impl.PackedCoordinateSequence; -import de.flapdoodle.embed.mongo.distribution.Version; -import de.flapdoodle.embed.mongo.tests.MongodForTestsFactory; import info.aduna.iteration.CloseableIteration; -import org.apache.rya.indexing.GeoConstants; -import org.apache.rya.indexing.OptionalConfigUtils; -import org.apache.rya.indexing.StatementConstraints; -import org.apache.rya.indexing.accumulo.ConfigUtils; -import org.apache.rya.indexing.mongodb.geo.MongoGeoIndexer; -import org.apache.rya.mongodb.MongoDBRdfConfiguration; -public class MongoGeoIndexerTest { +public class MongoGeoIndexerTest extends MongoRyaTestBase { private static final StatementConstraints EMPTY_CONSTRAINTS = new StatementConstraints(); MongoDBRdfConfiguration conf; - MongoClient mongoClient; GeometryFactory gf = new GeometryFactory(new PrecisionModel(), 4326); @Before @@ -77,9 +74,6 @@ public class MongoGeoIndexerTest { conf.set(ConfigUtils.GEO_PREDICATES_LIST, "http://www.opengis.net/ont/geosparql#asWKT"); conf.set(OptionalConfigUtils.USE_GEO, "true"); conf.setTablePrefix("rya_"); - - final MongodForTestsFactory testsFactory = MongodForTestsFactory.with(Version.Main.PRODUCTION); - mongoClient = testsFactory.newMongo(); } @Test
