RYA-491 Repackaged reusable Mongo DB test code into a project named 'rya.test.mongo'. Closes #293
Project: http://git-wip-us.apache.org/repos/asf/incubator-rya/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-rya/commit/2c1efd22 Tree: http://git-wip-us.apache.org/repos/asf/incubator-rya/tree/2c1efd22 Diff: http://git-wip-us.apache.org/repos/asf/incubator-rya/diff/2c1efd22 Branch: refs/heads/master Commit: 2c1efd225523784fbd95a16a9cc52783383ae2ae Parents: b71e892 Author: kchilton2 <kevin.e.chil...@gmail.com> Authored: Tue Apr 24 16:32:05 2018 -0400 Committer: Valiyil <puja.vali...@parsons.com> Committed: Tue May 1 11:51:25 2018 -0400 ---------------------------------------------------------------------- dao/mongodb.rya/pom.xml | 13 +- .../rya/mongodb/EmbeddedMongoFactory.java | 104 ------------ .../rya/mongodb/EmbeddedMongoSingleton.java | 90 ---------- .../rya/mongodb/MongoDBQueryEngineIT.java | 4 +- .../rya/mongodb/MongoDBRyaBatchWriterIT.java | 4 +- .../apache/rya/mongodb/MongoDBRyaDAO2IT.java | 12 +- .../org/apache/rya/mongodb/MongoDBRyaDAOIT.java | 4 +- .../org/apache/rya/mongodb/MongoITBase.java | 94 ----------- .../org/apache/rya/mongodb/MongoRyaITBase.java | 80 +++++++++ .../mongodb/aggregation/PipelineQueryIT.java | 168 +++++++++---------- .../instance/MongoRyaDetailsRepositoryIT.java | 2 +- extras/indexing/pom.xml | 5 + .../api/client/mongo/MongoBatchUpdatePCJIT.java | 4 +- .../rya/api/client/mongo/MongoCreatePCJIT.java | 4 +- .../rya/api/client/mongo/MongoDeletePCJIT.java | 4 +- .../client/mongo/MongoExecuteSparqlQueryIT.java | 4 +- .../client/mongo/MongoGetInstanceDetailsIT.java | 4 +- .../rya/api/client/mongo/MongoInstallIT.java | 4 +- .../api/client/mongo/MongoInstanceExistsIT.java | 2 +- .../api/client/mongo/MongoListInstancesIT.java | 4 +- .../client/mongo/MongoLoadStatementsFileIT.java | 4 +- .../api/client/mongo/MongoLoadStatementsIT.java | 4 +- .../MongoSetRyaStreamsConfigurationIT.java | 4 +- .../rya/api/client/mongo/MongoUninstallIT.java | 4 +- .../IndexPlanValidatorTest.java | 2 +- .../entity/query/EntityQueryNodeIT.java | 2 +- .../storage/mongo/MongoEntityStorageIT.java | 2 +- .../storage/mongo/MongoTypeStorageIT.java | 2 +- .../update/mongo/MongoEntityIndexerIT.java | 6 +- .../external/PrecompJoinOptimizerTest.java | 2 +- .../external/PrecompJoinOptimizerTest2.java | 2 +- .../rya/indexing/mongo/MongoDbSmartUriIT.java | 8 +- .../rya/indexing/mongo/MongoEntityIndex2IT.java | 6 +- .../rya/indexing/mongo/MongoEntityIndexIT.java | 14 +- .../indexing/mongo/MongoFreeTextIndexerIT.java | 6 +- .../rya/indexing/mongo/MongoPCJIndexIT.java | 28 ++-- .../indexing/mongo/MongoPcjIntegrationTest.java | 4 +- .../indexing/mongo/MongoTemporalIndexerIT.java | 8 +- .../indexing/pcj/matching/PCJOptimizerTest.java | 2 +- .../duplication/DuplicateDataDetectorIT.java | 2 +- .../metadata/MongoStatementMetadataIT.java | 30 ++-- .../metadata/MongoStatementMetadataNodeIT.java | 158 ++++++++--------- .../sail/config/RyaMongoDbSailFactoryTest.java | 4 +- extras/indexingExample/pom.xml | 4 + .../src/main/java/InferenceExamples.java | 2 +- .../src/main/java/MongoRyaDirectExample.java | 2 +- extras/rya.export/export.integration/pom.xml | 7 +- extras/rya.forwardchain/pom.xml | 5 + .../rya/forwardchain/batch/MongoSpinIT.java | 2 +- extras/rya.geoindexing/geo.mongo/pom.xml | 4 + .../geoExamples/RyaMongoGeoDirectExample.java | 2 +- .../geotemporal/MongoGeoTemporalIndexIT.java | 4 +- .../geotemporal/model/EventQueryNode2IT.java | 2 +- .../geotemporal/mongo/MongoEventStorageIT.java | 2 +- .../mongo/MongoGeoTemporalIndexerIT.java | 10 +- .../indexing/mongo/MongoGeoIndexerFilterIT.java | 4 +- .../rya/indexing/mongo/MongoGeoIndexerIT.java | 4 +- .../rya/indexing/mongo/MongoGeoIndexerSfIT.java | 4 +- .../indexing/mongo/MongoIndexerDeleteIT.java | 4 +- extras/rya.indexing.pcj/pom.xml | 5 + .../storage/mongo/MongoPcjDocumentsTest.java | 4 +- .../pcj/storage/mongo/MongoPcjStorageIT.java | 4 +- .../mongo/PcjDocumentsIntegrationTest.java | 4 +- .../storage/mongo/PcjDocumentsWithMockTest.java | 4 +- extras/shell/pom.xml | 5 + .../org/apache/rya/shell/MongoRyaShellIT.java | 62 ++----- .../apache/rya/shell/RyaShellMongoITBase.java | 2 +- pom.xml | 5 + test/mongo/pom.xml | 63 +++++++ .../rya/test/mongo/EmbeddedMongoFactory.java | 103 ++++++++++++ .../rya/test/mongo/EmbeddedMongoSingleton.java | 90 ++++++++++ .../org/apache/rya/test/mongo/MongoITBase.java | 76 +++++++++ test/pom.xml | 1 + 73 files changed, 769 insertions(+), 635 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/pom.xml ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/pom.xml b/dao/mongodb.rya/pom.xml index 7203ea6..c30bbe1 100644 --- a/dao/mongodb.rya/pom.xml +++ b/dao/mongodb.rya/pom.xml @@ -77,10 +77,8 @@ Tests will fail with the following error when using 32bit JVM on either Linux or <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> </dependency> - <dependency> - <groupId>de.flapdoodle.embed</groupId> - <artifactId>de.flapdoodle.embed.mongo</artifactId> - </dependency> + + <!-- Test dependencies. --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> @@ -91,5 +89,10 @@ Tests will fail with the following error when using 32bit JVM on either Linux or <artifactId>mockito-all</artifactId> <scope>test</scope> </dependency> + <dependency> + <groupId>org.apache.rya</groupId> + <artifactId>rya.test.mongo</artifactId> + <scope>test</scope> + </dependency> </dependencies> -</project> +</project> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/main/java/org/apache/rya/mongodb/EmbeddedMongoFactory.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/main/java/org/apache/rya/mongodb/EmbeddedMongoFactory.java b/dao/mongodb.rya/src/main/java/org/apache/rya/mongodb/EmbeddedMongoFactory.java deleted file mode 100644 index a2c25ed..0000000 --- a/dao/mongodb.rya/src/main/java/org/apache/rya/mongodb/EmbeddedMongoFactory.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * 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.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 EmbeddedMongoFactory { - private static Logger logger = LoggerFactory.getLogger(EmbeddedMongoFactory.class.getName()); - - public static EmbeddedMongoFactory newFactory() throws IOException { - return EmbeddedMongoFactory.with(Version.Main.PRODUCTION); - } - - public static EmbeddedMongoFactory with(final IFeatureAwareVersion version) throws IOException { - return new EmbeddedMongoFactory(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 EmbeddedMongoFactory(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 { - final 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(); - } - } - - /** - * @return A new Mongo client that is connected to the embedded MongoDB Server. - * @throws UnknownHostException The hostname used was unknown. - * @throws MongoException Couldn't create the client. - */ - public MongoClient newMongoClient() throws UnknownHostException, MongoException { - return new MongoClient(new ServerAddress(mongodProcess.getConfig().net().getServerAddress(), mongodProcess.getConfig().net().getPort())); - } - - /** - * @return The process configuration. - * - */ - public IMongodConfig getMongoServerDetails() { - return mongodProcess.getConfig(); - } - - /** - * 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/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/EmbeddedMongoSingleton.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/EmbeddedMongoSingleton.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/EmbeddedMongoSingleton.java deleted file mode 100644 index 837f926..0000000 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/EmbeddedMongoSingleton.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * 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.UnknownHostException; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.mongodb.MongoClient; -import com.mongodb.MongoException; - -import de.flapdoodle.embed.mongo.config.IMongodConfig; - -/** - * To be used for tests. Creates a singleton {@link MongoClient} to be used - * throughout all of the MongoDB related tests. Without the singleton, the - * embedded mongo factory ends up orphaning processes, consuming resources. - */ -public class EmbeddedMongoSingleton { - - public static MongoClient getNewMongoClient() throws UnknownHostException, MongoException { - final MongoClient client = InstanceHolder.SINGLETON.factory.newMongoClient(); - - Runtime.getRuntime().addShutdownHook(new Thread() { - @Override - public void run() { - try { - client.close(); - } catch (final Throwable t) { - // logging frameworks will likely be shut down - t.printStackTrace(System.err); - } - } - }); - - return client; - } - - /** - * @return The singleton Mongo DB instance's server details. - */ - public static IMongodConfig getMongodConfig() { - return InstanceHolder.SINGLETON.mongodConfig; - } - - private EmbeddedMongoSingleton() { - // hiding implicit default constructor - } - - private enum InstanceHolder { - - SINGLETON; - - private final Logger log; - private IMongodConfig mongodConfig; - private EmbeddedMongoFactory factory; - - InstanceHolder() { - log = LoggerFactory.getLogger(EmbeddedMongoSingleton.class); - try { - factory = EmbeddedMongoFactory.newFactory(); - mongodConfig = factory.getMongoServerDetails(); - } catch (final IOException e) { - log.error("Unexpected error while starting mongo client", e); - } catch (final Throwable e) { - // catching throwable because failure to construct an enum - // instance will lead to another error being thrown downstream - log.error("Unexpected throwable while starting mongo client", e); - } - } - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineIT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineIT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineIT.java index ead87d2..f2dd11d 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineIT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBQueryEngineIT.java @@ -25,9 +25,9 @@ import java.util.Map; import java.util.Map.Entry; import org.apache.rya.api.RdfCloudTripleStoreUtils; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaIRI; import org.eclipse.rdf4j.common.iteration.CloseableIteration; import org.eclipse.rdf4j.model.ValueFactory; import org.eclipse.rdf4j.model.impl.SimpleValueFactory; @@ -40,7 +40,7 @@ import com.google.common.collect.Lists; /** * Integration tests the methods of {@link MongoDBQueryEngine}. */ -public class MongoDBQueryEngineIT extends MongoITBase { +public class MongoDBQueryEngineIT extends MongoRyaITBase { private static final ValueFactory VF = SimpleValueFactory.getInstance(); private RyaStatement getStatement(final String s, final String p, final String o) { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaBatchWriterIT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaBatchWriterIT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaBatchWriterIT.java index 4ce1348..ec8ee19 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaBatchWriterIT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaBatchWriterIT.java @@ -24,9 +24,9 @@ import java.util.ArrayList; import java.util.List; import org.apache.log4j.BasicConfigurator; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.mongodb.batch.MongoDbBatchWriter; import org.apache.rya.mongodb.batch.MongoDbBatchWriterConfig; import org.apache.rya.mongodb.batch.MongoDbBatchWriterUtils; @@ -44,7 +44,7 @@ import com.mongodb.DBObject; /** * Integration tests for the {@link MongoDbBatchWriter}. */ -public class MongoDBRyaBatchWriterIT extends MongoITBase { +public class MongoDBRyaBatchWriterIT extends MongoRyaITBase { private static void setupLogging() { BasicConfigurator.configure(); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAO2IT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAO2IT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAO2IT.java index 25bf844..b7775de 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAO2IT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoDBRyaDAO2IT.java @@ -25,9 +25,9 @@ import static org.junit.Assert.assertTrue; import java.io.IOException; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.persist.RyaDAOException; import org.apache.rya.mongodb.document.visibility.DocumentVisibility; import org.bson.Document; @@ -40,11 +40,11 @@ import com.mongodb.client.MongoDatabase; /** * Integration tests the methods of {@link MongoDBRyaDAO}. */ -public class MongoDBRyaDAO2IT extends MongoITBase { +public class MongoDBRyaDAO2IT extends MongoRyaITBase { @Test public void testDeleteWildcard() throws RyaDAOException { - MongoDBRyaDAO dao = new MongoDBRyaDAO(); + final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); @@ -60,7 +60,7 @@ public class MongoDBRyaDAO2IT extends MongoITBase { @Test public void testAdd() throws RyaDAOException, MongoException, IOException { - MongoDBRyaDAO dao = new MongoDBRyaDAO(); + final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); @@ -83,7 +83,7 @@ public class MongoDBRyaDAO2IT extends MongoITBase { @Test public void testDelete() throws RyaDAOException, MongoException, IOException { - MongoDBRyaDAO dao = new MongoDBRyaDAO(); + final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); @@ -109,7 +109,7 @@ public class MongoDBRyaDAO2IT extends MongoITBase { @Test public void testDeleteWildcardSubjectWithContext() throws RyaDAOException, MongoException, IOException { - MongoDBRyaDAO dao = new MongoDBRyaDAO(); + final MongoDBRyaDAO dao = new MongoDBRyaDAO(); try { dao.setConf(conf); dao.init(); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/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 939eff3..6e07150 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 @@ -27,9 +27,9 @@ import static org.junit.Assert.assertTrue; import java.io.IOException; import org.apache.accumulo.core.security.Authorizations; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaStatement.RyaStatementBuilder; -import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.persist.RyaDAOException; import org.apache.rya.api.persist.query.RyaQuery; import org.apache.rya.mongodb.document.util.AuthorizationsUtil; @@ -42,7 +42,7 @@ import com.mongodb.MongoException; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; -public class MongoDBRyaDAOIT extends MongoITBase { +public class MongoDBRyaDAOIT extends MongoRyaITBase { @Override protected void updateConfiguration(final MongoDBRdfConfiguration conf) { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoITBase.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoITBase.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoITBase.java deleted file mode 100644 index bd3870f..0000000 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoITBase.java +++ /dev/null @@ -1,94 +0,0 @@ -/** - * 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.util.List; - -import org.apache.hadoop.conf.Configuration; -import org.bson.Document; -import org.junit.Before; - -import com.mongodb.DBCollection; -import com.mongodb.MongoClient; -import com.mongodb.client.MongoCollection; - -/** - * A base class that may be used when implementing Mongo DB tests that use the - * JUnit framework. - */ -public class MongoITBase { - - private MongoClient mongoClient = null; - protected StatefulMongoDBRdfConfiguration conf; - - @Before - public void setupTest() throws Exception { - // Setup the configuration that will be used within the test. - final MongoDBRdfConfiguration conf = new MongoDBRdfConfiguration( new Configuration() ); - conf.setBoolean("sc.useMongo", true); - conf.setTablePrefix("test_"); - conf.setMongoDBName(conf.getRyaInstanceName()); - conf.setMongoHostname(EmbeddedMongoSingleton.getMongodConfig().net().getServerAddress().getHostAddress()); - conf.setMongoPort(Integer.toString(EmbeddedMongoSingleton.getMongodConfig().net().getPort())); - - // Let tests update the configuration. - updateConfiguration(conf); - - // Create the stateful configuration object. - mongoClient = EmbeddedMongoSingleton.getNewMongoClient(); - final List<MongoSecondaryIndex> indexers = conf.getInstances("ac.additional.indexers", MongoSecondaryIndex.class); - this.conf = new StatefulMongoDBRdfConfiguration(conf, mongoClient, indexers); - - // Remove any DBs that were created by previous tests. - for(final String dbName : mongoClient.listDatabaseNames()) { - mongoClient.dropDatabase(dbName); - } - } - - /** - * Override this method if you would like to augment the configuration object that - * will be used to initialize indexers and create the mongo client prior to running a test. - * - * @param conf - The configuration object that may be updated. (not null) - */ - protected void updateConfiguration(final MongoDBRdfConfiguration conf) { - // By default, do nothing. - } - - /** - * @return A {@link MongoClient} that is connected to the embedded instance of Mongo DB. - */ - public MongoClient getMongoClient() { - return mongoClient; - } - - /** - * @return The Rya triples {@link MongoCollection}. - */ - public MongoCollection<Document> getRyaCollection() { - return mongoClient.getDatabase(conf.getMongoDBName()).getCollection(conf.getTriplesCollectionName()); - } - - /** - * @return The Rya triples {@link DBCollection}. - */ - public DBCollection getRyaDbCollection() { - return mongoClient.getDB(conf.getMongoDBName()).getCollection(conf.getTriplesCollectionName()); - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaITBase.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaITBase.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaITBase.java new file mode 100644 index 0000000..760152e --- /dev/null +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/MongoRyaITBase.java @@ -0,0 +1,80 @@ +/** + * 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.util.List; + +import org.apache.hadoop.conf.Configuration; +import org.apache.rya.test.mongo.MongoITBase; +import org.bson.Document; + +import com.mongodb.DBCollection; +import com.mongodb.client.MongoCollection; + +/** + * A base class that may be used when implementing Mongo DB tests that use the + * JUnit framework to talk to an instance of Rya. The configuration file, which contains + * state information, is protected so test classes may access it directly. + */ +public class MongoRyaITBase extends MongoITBase { + + protected StatefulMongoDBRdfConfiguration conf; + + @Override + protected void beforeTest() throws Exception { + // Setup the configuration that will be used within the test. + final MongoDBRdfConfiguration conf = new MongoDBRdfConfiguration( new Configuration() ); + conf.setBoolean("sc.useMongo", true); + conf.setTablePrefix("test_"); + conf.setMongoDBName(conf.getRyaInstanceName()); + conf.setMongoHostname( super.getMongoHostname() ); + conf.setMongoPort("" + super.getMongoPort()); + + // Let tests update the configuration. + updateConfiguration(conf); + + // Create the stateful configuration object. + final List<MongoSecondaryIndex> indexers = conf.getInstances("ac.additional.indexers", MongoSecondaryIndex.class); + this.conf = new StatefulMongoDBRdfConfiguration(conf, getMongoClient(), indexers); + } + + /** + * Override this method if you would like to augment the configuration object that + * will be used to initialize indexers and create the mongo client prior to running a test. + * + * @param conf - The configuration object that may be updated. (not null) + */ + protected void updateConfiguration(final MongoDBRdfConfiguration conf) { + // By default, do nothing. + } + + /** + * @return The Rya triples {@link MongoCollection}. + */ + public MongoCollection<Document> getRyaCollection() { + return getMongoClient().getDatabase(conf.getMongoDBName()).getCollection(conf.getTriplesCollectionName()); + } + + /** + * @return The Rya triples {@link DBCollection}. + */ + public DBCollection getRyaDbCollection() { + return getMongoClient().getDB(conf.getMongoDBName()).getCollection(conf.getTriplesCollectionName()); + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/aggregation/PipelineQueryIT.java ---------------------------------------------------------------------- diff --git a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/aggregation/PipelineQueryIT.java b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/aggregation/PipelineQueryIT.java index cd3c513..9d4dcbe 100644 --- a/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/aggregation/PipelineQueryIT.java +++ b/dao/mongodb.rya/src/test/java/org/apache/rya/mongodb/aggregation/PipelineQueryIT.java @@ -28,7 +28,7 @@ import org.apache.rya.api.persist.RyaDAOException; import org.apache.rya.api.resolver.RdfToRyaConversions; import org.apache.rya.api.resolver.RyaToRdfConversions; import org.apache.rya.mongodb.MongoDBRyaDAO; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.apache.rya.mongodb.dao.SimpleMongoDBStorageStrategy; import org.bson.Document; import org.bson.conversions.Bson; @@ -62,7 +62,7 @@ import com.google.common.collect.Multiset; import com.mongodb.DBObject; import com.mongodb.util.JSON; -public class PipelineQueryIT extends MongoITBase { +public class PipelineQueryIT extends MongoRyaITBase { private static final ValueFactory VF = SimpleValueFactory.getInstance(); private static final SPARQLParser PARSER = new SPARQLParser(); @@ -78,18 +78,18 @@ public class PipelineQueryIT extends MongoITBase { dao.init(); } - private void insert(Resource subject, IRI predicate, Value object) throws RyaDAOException { + private void insert(final Resource subject, final IRI predicate, final Value object) throws RyaDAOException { insert(subject, predicate, object, 0); } - private void insert(Resource subject, IRI predicate, Value object, int derivationLevel) throws RyaDAOException { + private void insert(final Resource subject, final IRI predicate, final Value object, final int derivationLevel) throws RyaDAOException { final RyaStatementBuilder builder = new RyaStatementBuilder(); builder.setSubject(RdfToRyaConversions.convertResource(subject)); builder.setPredicate(RdfToRyaConversions.convertIRI(predicate)); builder.setObject(RdfToRyaConversions.convertValue(object)); final RyaStatement rstmt = builder.build(); if (derivationLevel > 0) { - DBObject obj = new SimpleMongoDBStorageStrategy().serialize(builder.build()); + final DBObject obj = new SimpleMongoDBStorageStrategy().serialize(builder.build()); obj.put("derivation_level", derivationLevel); getRyaDbCollection().insert(obj); } @@ -98,16 +98,16 @@ public class PipelineQueryIT extends MongoITBase { } } - private void testPipelineQuery(String query, Multiset<BindingSet> expectedSolutions) throws Exception { + private void testPipelineQuery(final String query, final Multiset<BindingSet> expectedSolutions) throws Exception { // Prepare query and convert to pipeline - QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); - SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); + final QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); + final SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); queryTree.visit(visitor); // Execute pipeline and verify results Assert.assertTrue(queryTree.getArg() instanceof AggregationPipelineQueryNode); - AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); - Multiset<BindingSet> solutions = HashMultiset.create(); - CloseableIteration<BindingSet, QueryEvaluationException> iter = pipelineNode.evaluate(new QueryBindingSet()); + final AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); + final Multiset<BindingSet> solutions = HashMultiset.create(); + final CloseableIteration<BindingSet, QueryEvaluationException> iter = pipelineNode.evaluate(new QueryBindingSet()); while (iter.hasNext()) { solutions.add(iter.next()); } @@ -126,8 +126,8 @@ public class PipelineQueryIT extends MongoITBase { final String query = "SELECT * WHERE {\n" + " ?individual a ?type .\n" + "}"; - List<String> varNames = Arrays.asList("individual", "type"); - Multiset<BindingSet> expectedSolutions = HashMultiset.create(); + final List<String> varNames = Arrays.asList("individual", "type"); + final Multiset<BindingSet> expectedSolutions = HashMultiset.create(); expectedSolutions.add(new ListBindingSet(varNames, OWL.THING, OWL.CLASS)); expectedSolutions.add(new ListBindingSet(varNames, FOAF.PERSON, OWL.CLASS)); expectedSolutions.add(new ListBindingSet(varNames, VF.createIRI("urn:Alice"), FOAF.PERSON)); @@ -147,18 +147,18 @@ public class PipelineQueryIT extends MongoITBase { final String query = "SELECT * WHERE {\n" + " owl:Thing a owl:Class .\n" + "}"; - Multiset<BindingSet> expectedSolutions = HashMultiset.create(); + final Multiset<BindingSet> expectedSolutions = HashMultiset.create(); expectedSolutions.add(new EmptyBindingSet()); // Execute pipeline and verify results - QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); - SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); + final QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); + final SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); queryTree.visit(visitor); Assert.assertTrue(queryTree.getArg() instanceof Projection); - Projection projection = (Projection) queryTree.getArg(); + final Projection projection = (Projection) queryTree.getArg(); Assert.assertTrue(projection.getArg() instanceof AggregationPipelineQueryNode); - AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) projection.getArg(); - Multiset<BindingSet> solutions = HashMultiset.create(); - CloseableIteration<BindingSet, QueryEvaluationException> iter = pipelineNode.evaluate(new QueryBindingSet()); + final AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) projection.getArg(); + final Multiset<BindingSet> solutions = HashMultiset.create(); + final CloseableIteration<BindingSet, QueryEvaluationException> iter = pipelineNode.evaluate(new QueryBindingSet()); while (iter.hasNext()) { solutions.add(iter.next()); } @@ -168,11 +168,11 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testJoinTwoSharedVariables() throws Exception { // Insert data - IRI person = VF.createIRI("urn:Person"); - IRI livingThing = VF.createIRI("urn:LivingThing"); - IRI human = VF.createIRI("urn:Human"); - IRI programmer = VF.createIRI("urn:Programmer"); - IRI thing = VF.createIRI("urn:Thing"); + final IRI person = VF.createIRI("urn:Person"); + final IRI livingThing = VF.createIRI("urn:LivingThing"); + final IRI human = VF.createIRI("urn:Human"); + final IRI programmer = VF.createIRI("urn:Programmer"); + final IRI thing = VF.createIRI("urn:Thing"); insert(programmer, RDFS.SUBCLASSOF, person); insert(person, RDFS.SUBCLASSOF, FOAF.PERSON); insert(FOAF.PERSON, RDFS.SUBCLASSOF, person); @@ -187,8 +187,8 @@ public class PipelineQueryIT extends MongoITBase { + " ?A rdfs:subClassOf ?B .\n" + " ?B rdfs:subClassOf ?A .\n" + "}"; - List<String> varNames = Arrays.asList("A", "B"); - Multiset<BindingSet> expectedSolutions = HashMultiset.create(); + final List<String> varNames = Arrays.asList("A", "B"); + final Multiset<BindingSet> expectedSolutions = HashMultiset.create(); expectedSolutions.add(new ListBindingSet(varNames, person, FOAF.PERSON)); expectedSolutions.add(new ListBindingSet(varNames, FOAF.PERSON, person)); expectedSolutions.add(new ListBindingSet(varNames, thing, OWL.THING)); @@ -200,12 +200,12 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testVariableRename() throws Exception { // Insert data - IRI alice = VF.createIRI("urn:Alice"); - IRI bob = VF.createIRI("urn:Bob"); - IRI carol = VF.createIRI("urn:Carol"); - IRI dan = VF.createIRI("urn:Dan"); - IRI eve = VF.createIRI("urn:Eve"); - IRI friend = VF.createIRI("urn:friend"); + final IRI alice = VF.createIRI("urn:Alice"); + final IRI bob = VF.createIRI("urn:Bob"); + final IRI carol = VF.createIRI("urn:Carol"); + final IRI dan = VF.createIRI("urn:Dan"); + final IRI eve = VF.createIRI("urn:Eve"); + final IRI friend = VF.createIRI("urn:friend"); insert(alice, friend, bob); insert(alice, friend, carol); insert(bob, friend, eve); @@ -217,8 +217,8 @@ public class PipelineQueryIT extends MongoITBase { + " ?x <urn:friend> ?y .\n" + " ?y <urn:friend> ?z .\n" + "}"; - Multiset<BindingSet> expectedSolutions1 = HashMultiset.create(); - List<String> varNames = Arrays.asList("x", "friendOfFriend"); + final Multiset<BindingSet> expectedSolutions1 = HashMultiset.create(); + final List<String> varNames = Arrays.asList("x", "friendOfFriend"); expectedSolutions1.add(new ListBindingSet(varNames, alice, eve)); expectedSolutions1.add(new ListBindingSet(varNames, alice, eve)); expectedSolutions1.add(new ListBindingSet(varNames, bob, alice)); @@ -231,7 +231,7 @@ public class PipelineQueryIT extends MongoITBase { + " ?x <urn:friend> ?y .\n" + " ?y <urn:friend> ?z .\n" + "}"; - Multiset<BindingSet> expectedSolutions2 = HashMultiset.create(); + final Multiset<BindingSet> expectedSolutions2 = HashMultiset.create(); expectedSolutions2.add(new ListBindingSet(varNames, alice, eve)); expectedSolutions2.add(new ListBindingSet(varNames, bob, alice)); expectedSolutions2.add(new ListBindingSet(varNames, carol, alice)); @@ -246,10 +246,10 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testFilterQuery() throws Exception { // Insert data - IRI alice = VF.createIRI("urn:Alice"); - IRI bob = VF.createIRI("urn:Bob"); - IRI eve = VF.createIRI("urn:Eve"); - IRI relatedTo = VF.createIRI("urn:relatedTo"); + final IRI alice = VF.createIRI("urn:Alice"); + final IRI bob = VF.createIRI("urn:Bob"); + final IRI eve = VF.createIRI("urn:Eve"); + final IRI relatedTo = VF.createIRI("urn:relatedTo"); insert(alice, FOAF.KNOWS, bob); insert(alice, FOAF.KNOWS, alice); insert(alice, FOAF.KNOWS, eve); @@ -284,12 +284,12 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testMultiConstruct() throws Exception { // Insert data - IRI alice = VF.createIRI("urn:Alice"); - IRI bob = VF.createIRI("urn:Bob"); - IRI eve = VF.createIRI("urn:Eve"); - IRI friend = VF.createIRI("urn:friend"); - IRI knows = VF.createIRI("urn:knows"); - IRI person = VF.createIRI("urn:Person"); + final IRI alice = VF.createIRI("urn:Alice"); + final IRI bob = VF.createIRI("urn:Bob"); + final IRI eve = VF.createIRI("urn:Eve"); + final IRI friend = VF.createIRI("urn:friend"); + final IRI knows = VF.createIRI("urn:knows"); + final IRI person = VF.createIRI("urn:Person"); insert(alice, friend, bob); insert(bob, knows, eve); insert(eve, knows, alice); @@ -299,7 +299,7 @@ public class PipelineQueryIT extends MongoITBase { + " ?x rdf:type <urn:Person> .\n" + "} WHERE { ?x <urn:knows> ?y }"; final Multiset<BindingSet> expected = HashMultiset.create(); - List<String> varNames = Arrays.asList("subject", "predicate", "object"); + final List<String> varNames = Arrays.asList("subject", "predicate", "object"); expected.add(new ListBindingSet(varNames, bob, RDF.TYPE, OWL.THING)); expected.add(new ListBindingSet(varNames, bob, RDF.TYPE, person)); expected.add(new ListBindingSet(varNames, eve, RDF.TYPE, OWL.THING)); @@ -310,13 +310,13 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testTriplePipeline() throws Exception { - IRI alice = VF.createIRI("urn:Alice"); - IRI bob = VF.createIRI("urn:Bob"); - IRI eve = VF.createIRI("urn:Eve"); - IRI friend = VF.createIRI("urn:friend"); - IRI knows = VF.createIRI("urn:knows"); - IRI year = VF.createIRI("urn:year"); - Literal yearLiteral = VF.createLiteral("2017", XMLSchema.GYEAR); + final IRI alice = VF.createIRI("urn:Alice"); + final IRI bob = VF.createIRI("urn:Bob"); + final IRI eve = VF.createIRI("urn:Eve"); + final IRI friend = VF.createIRI("urn:friend"); + final IRI knows = VF.createIRI("urn:knows"); + final IRI year = VF.createIRI("urn:year"); + final Literal yearLiteral = VF.createLiteral("2017", XMLSchema.GYEAR); final String query = "CONSTRUCT {\n" + " ?x <urn:knows> ?y .\n" + " ?x <urn:year> \"2017\"^^<" + XMLSchema.GYEAR + "> .\n" @@ -325,20 +325,20 @@ public class PipelineQueryIT extends MongoITBase { insert(bob, knows, eve); insert(eve, knows, alice); // Prepare query and convert to pipeline - QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); - SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); + final QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); + final SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); queryTree.visit(visitor); // Get pipeline, add triple conversion, and verify that the result is a // properly serialized statement Assert.assertTrue(queryTree.getArg() instanceof AggregationPipelineQueryNode); - AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); - List<Bson> triplePipeline = pipelineNode.getTriplePipeline(System.currentTimeMillis(), false); - SimpleMongoDBStorageStrategy strategy = new SimpleMongoDBStorageStrategy(); - List<Statement> results = new LinkedList<>(); - for (Document doc : getRyaCollection().aggregate(triplePipeline)) { + final AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); + final List<Bson> triplePipeline = pipelineNode.getTriplePipeline(System.currentTimeMillis(), false); + final SimpleMongoDBStorageStrategy strategy = new SimpleMongoDBStorageStrategy(); + final List<Statement> results = new LinkedList<>(); + for (final Document doc : getRyaCollection().aggregate(triplePipeline)) { final DBObject dbo = (DBObject) JSON.parse(doc.toJson()); - RyaStatement rstmt = strategy.deserializeDBObject(dbo); - Statement stmt = RyaToRdfConversions.convertStatement(rstmt); + final RyaStatement rstmt = strategy.deserializeDBObject(dbo); + final Statement stmt = RyaToRdfConversions.convertStatement(rstmt); results.add(stmt); } Assert.assertEquals(2, results.size()); @@ -349,11 +349,11 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testRequiredDerivationLevel() throws Exception { // Insert data - IRI person = VF.createIRI("urn:Person"); - IRI livingThing = VF.createIRI("urn:LivingThing"); - IRI human = VF.createIRI("urn:Human"); - IRI programmer = VF.createIRI("urn:Programmer"); - IRI thing = VF.createIRI("urn:Thing"); + final IRI person = VF.createIRI("urn:Person"); + final IRI livingThing = VF.createIRI("urn:LivingThing"); + final IRI human = VF.createIRI("urn:Human"); + final IRI programmer = VF.createIRI("urn:Programmer"); + final IRI thing = VF.createIRI("urn:Thing"); insert(programmer, RDFS.SUBCLASSOF, person); insert(person, RDFS.SUBCLASSOF, FOAF.PERSON); insert(FOAF.PERSON, RDFS.SUBCLASSOF, person); @@ -368,18 +368,18 @@ public class PipelineQueryIT extends MongoITBase { + " ?A rdfs:subClassOf ?B .\n" + " ?B rdfs:subClassOf ?A .\n" + "}"; - List<String> varNames = Arrays.asList("A", "B"); + final List<String> varNames = Arrays.asList("A", "B"); Multiset<BindingSet> expectedSolutions = HashMultiset.create(); expectedSolutions.add(new ListBindingSet(varNames, person, FOAF.PERSON)); expectedSolutions.add(new ListBindingSet(varNames, FOAF.PERSON, person)); expectedSolutions.add(new ListBindingSet(varNames, thing, OWL.THING)); expectedSolutions.add(new ListBindingSet(varNames, OWL.THING, thing)); // Prepare query and convert to pipeline - QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); - SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); + final QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); + final SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); queryTree.visit(visitor); Assert.assertTrue(queryTree.getArg() instanceof AggregationPipelineQueryNode); - AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); + final AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); // Extend the pipeline by requiring a derivation level of zero (should have no effect) pipelineNode.requireSourceDerivationDepth(0); Multiset<BindingSet> solutions = HashMultiset.create(); @@ -404,11 +404,11 @@ public class PipelineQueryIT extends MongoITBase { @Test public void testRequiredTimestamp() throws Exception { // Insert data - IRI person = VF.createIRI("urn:Person"); - IRI livingThing = VF.createIRI("urn:LivingThing"); - IRI human = VF.createIRI("urn:Human"); - IRI programmer = VF.createIRI("urn:Programmer"); - IRI thing = VF.createIRI("urn:Thing"); + final IRI person = VF.createIRI("urn:Person"); + final IRI livingThing = VF.createIRI("urn:LivingThing"); + final IRI human = VF.createIRI("urn:Human"); + final IRI programmer = VF.createIRI("urn:Programmer"); + final IRI thing = VF.createIRI("urn:Thing"); insert(programmer, RDFS.SUBCLASSOF, person); insert(person, RDFS.SUBCLASSOF, FOAF.PERSON, 2); insert(FOAF.PERSON, RDFS.SUBCLASSOF, person); @@ -423,28 +423,28 @@ public class PipelineQueryIT extends MongoITBase { + " ?A rdfs:subClassOf ?B .\n" + " ?B rdfs:subClassOf ?A .\n" + "}"; - List<String> varNames = Arrays.asList("A", "B"); - Multiset<BindingSet> expectedSolutions = HashMultiset.create(); + final List<String> varNames = Arrays.asList("A", "B"); + final Multiset<BindingSet> expectedSolutions = HashMultiset.create(); expectedSolutions.add(new ListBindingSet(varNames, person, FOAF.PERSON)); expectedSolutions.add(new ListBindingSet(varNames, FOAF.PERSON, person)); expectedSolutions.add(new ListBindingSet(varNames, thing, OWL.THING)); expectedSolutions.add(new ListBindingSet(varNames, OWL.THING, thing)); // Prepare query and convert to pipeline - QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); - SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); + final QueryRoot queryTree = new QueryRoot(PARSER.parseQuery(query, null).getTupleExpr()); + final SparqlToPipelineTransformVisitor visitor = new SparqlToPipelineTransformVisitor(getRyaCollection()); queryTree.visit(visitor); Assert.assertTrue(queryTree.getArg() instanceof AggregationPipelineQueryNode); - AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); + final AggregationPipelineQueryNode pipelineNode = (AggregationPipelineQueryNode) queryTree.getArg(); // Extend the pipeline by requiring a timestamp of zero (should have no effect) pipelineNode.requireSourceTimestamp(0); - Multiset<BindingSet> solutions = HashMultiset.create(); + final Multiset<BindingSet> solutions = HashMultiset.create(); CloseableIteration<BindingSet, QueryEvaluationException> iter = pipelineNode.evaluate(new QueryBindingSet()); while (iter.hasNext()) { solutions.add(iter.next()); } Assert.assertEquals(expectedSolutions, solutions); // Extend the pipeline by requiring a future timestamp (should produce no results) - long delta = 1000 * 60 * 60 * 24; + final long delta = 1000 * 60 * 60 * 24; pipelineNode.requireSourceTimestamp(System.currentTimeMillis() + delta); iter = pipelineNode.evaluate(new QueryBindingSet()); Assert.assertFalse(iter.hasNext()); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/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 5321db5..266313d 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 @@ -40,7 +40,7 @@ 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.MongoITBase; +import org.apache.rya.test.mongo.MongoITBase; import org.junit.Before; import org.junit.Test; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/pom.xml ---------------------------------------------------------------------- diff --git a/extras/indexing/pom.xml b/extras/indexing/pom.xml index 3adc823..837d67a 100644 --- a/extras/indexing/pom.xml +++ b/extras/indexing/pom.xml @@ -114,6 +114,11 @@ </dependency> <dependency> <groupId>org.apache.rya</groupId> + <artifactId>rya.test.mongo</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.rya</groupId> <artifactId>rya.test.accumulo</artifactId> <scope>test</scope> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoBatchUpdatePCJIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoBatchUpdatePCJIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoBatchUpdatePCJIT.java index 1d796fe..986c8b5 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoBatchUpdatePCJIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoBatchUpdatePCJIT.java @@ -35,7 +35,7 @@ import org.apache.rya.indexing.external.PrecomputedJoinIndexerConfig.Precomputed import org.apache.rya.indexing.pcj.storage.PrecomputedJoinStorage; import org.apache.rya.indexing.pcj.storage.mongo.MongoPcjStorage; import org.apache.rya.mongodb.MongoDBRdfConfiguration; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.model.Statement; import org.eclipse.rdf4j.model.ValueFactory; import org.eclipse.rdf4j.model.impl.SimpleValueFactory; @@ -46,7 +46,7 @@ import org.junit.Test; /** * Integration tests the methods of {@link AccumuloBatchUpdatePCJ}. */ -public class MongoBatchUpdatePCJIT extends MongoITBase { +public class MongoBatchUpdatePCJIT extends MongoRyaITBase { @Override protected void updateConfiguration(final MongoDBRdfConfiguration conf) { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoCreatePCJIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoCreatePCJIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoCreatePCJIT.java index 183c195..49fbe30 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoCreatePCJIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoCreatePCJIT.java @@ -34,7 +34,7 @@ import org.apache.rya.api.instance.RyaDetails.PCJIndexDetails.PCJDetails; import org.apache.rya.indexing.pcj.storage.PcjMetadata; import org.apache.rya.indexing.pcj.storage.PrecomputedJoinStorage; import org.apache.rya.indexing.pcj.storage.mongo.MongoPcjStorage; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; import com.google.common.base.Optional; @@ -43,7 +43,7 @@ import com.google.common.collect.ImmutableMap; /** * Integration tests the methods of {@link AccumuloCreatePCJ}. */ -public class MongoCreatePCJIT extends MongoITBase { +public class MongoCreatePCJIT extends MongoRyaITBase { @Test(expected = InstanceDoesNotExistException.class) public void instanceDoesNotExist() throws Exception { final RyaClient ryaClient = MongoRyaClientFactory.build(getConnectionDetails(), getMongoClient()); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoDeletePCJIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoDeletePCJIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoDeletePCJIT.java index d8137bc..6369920 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoDeletePCJIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoDeletePCJIT.java @@ -29,7 +29,7 @@ import org.apache.rya.api.client.RyaClient; import org.apache.rya.api.client.accumulo.AccumuloCreatePCJ; import org.apache.rya.api.instance.RyaDetails; import org.apache.rya.api.instance.RyaDetails.PCJIndexDetails.PCJDetails; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; import com.google.common.base.Optional; @@ -38,7 +38,7 @@ import com.google.common.collect.ImmutableMap; /** * Integration tests the methods of {@link AccumuloCreatePCJ}. */ -public class MongoDeletePCJIT extends MongoITBase { +public class MongoDeletePCJIT extends MongoRyaITBase { @Test(expected = InstanceDoesNotExistException.class) public void instanceDoesNotExist() throws Exception { final RyaClient ryaClient = MongoRyaClientFactory.build(getConnectionDetails(), getMongoClient()); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoExecuteSparqlQueryIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoExecuteSparqlQueryIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoExecuteSparqlQueryIT.java index a009b2a..581a0db 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoExecuteSparqlQueryIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoExecuteSparqlQueryIT.java @@ -26,7 +26,7 @@ import java.util.List; import org.apache.rya.api.client.ExecuteSparqlQuery; import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.RyaClient; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.model.Statement; import org.eclipse.rdf4j.model.ValueFactory; import org.eclipse.rdf4j.model.impl.SimpleValueFactory; @@ -38,7 +38,7 @@ import org.junit.Test; /** * Integration tests the methods of {@link }. */ -public class MongoExecuteSparqlQueryIT extends MongoITBase { +public class MongoExecuteSparqlQueryIT extends MongoRyaITBase { @Test public void ExecuteSparqlQuery_exec() throws Exception { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoGetInstanceDetailsIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoGetInstanceDetailsIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoGetInstanceDetailsIT.java index 5f1d222..5c91fb2 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoGetInstanceDetailsIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoGetInstanceDetailsIT.java @@ -37,7 +37,7 @@ import org.apache.rya.api.instance.RyaDetails.JoinSelectivityDetails; import org.apache.rya.api.instance.RyaDetails.PCJIndexDetails; import org.apache.rya.api.instance.RyaDetails.ProspectorDetails; import org.apache.rya.api.instance.RyaDetails.TemporalIndexDetails; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; import com.google.common.base.Optional; @@ -46,7 +46,7 @@ import com.mongodb.MongoException; /** * Tests the methods of {@link MongoGetInstanceDetails}. */ -public class MongoGetInstanceDetailsIT extends MongoITBase { +public class MongoGetInstanceDetailsIT extends MongoRyaITBase { @Test public void getDetails() throws MongoException, RyaClientException { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstallIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstallIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstallIT.java index ecca646..f440a4e 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstallIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstallIT.java @@ -33,13 +33,13 @@ import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.InstanceExists; import org.apache.rya.api.client.RyaClient; import org.apache.rya.api.client.RyaClientException; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; /** * Integration tests the methods of {@link MongoInstall}. */ -public class MongoInstallIT extends MongoITBase { +public class MongoInstallIT extends MongoRyaITBase { @Test public void install() throws DuplicateInstanceNameException, RyaClientException { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstanceExistsIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstanceExistsIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstanceExistsIT.java index c27df2c..f6ff4fb 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstanceExistsIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoInstanceExistsIT.java @@ -22,8 +22,8 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.apache.accumulo.core.client.TableExistsException; -import org.apache.rya.mongodb.MongoITBase; import org.apache.rya.mongodb.instance.MongoRyaInstanceDetailsRepository; +import org.apache.rya.test.mongo.MongoITBase; import org.junit.Test; import com.mongodb.MongoClient; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoListInstancesIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoListInstancesIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoListInstancesIT.java index 6a5b1d6..7da76c2 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoListInstancesIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoListInstancesIT.java @@ -30,7 +30,7 @@ import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.ListInstances; import org.apache.rya.api.client.RyaClient; import org.apache.rya.api.client.RyaClientException; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; import com.google.common.collect.Lists; @@ -39,7 +39,7 @@ import com.mongodb.MongoException; /** * Integration tests the methods of {@link MongoListInstances}. */ -public class MongoListInstancesIT extends MongoITBase { +public class MongoListInstancesIT extends MongoRyaITBase { @Test public void listInstances_hasRyaDetailsTable() throws MongoException, DuplicateInstanceNameException, RyaClientException { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsFileIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsFileIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsFileIT.java index 1eedc68..8629029 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsFileIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsFileIT.java @@ -28,7 +28,7 @@ import org.apache.rya.api.client.Install; import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.InstanceDoesNotExistException; import org.apache.rya.api.client.RyaClient; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.bson.Document; import org.eclipse.rdf4j.model.Statement; import org.eclipse.rdf4j.model.ValueFactory; @@ -40,7 +40,7 @@ import com.mongodb.client.MongoCursor; /** * Integration tests the methods of {@link MongoLoadStatementsFile}. */ -public class MongoLoadStatementsFileIT extends MongoITBase { +public class MongoLoadStatementsFileIT extends MongoRyaITBase { @Test(expected = InstanceDoesNotExistException.class) public void instanceDoesNotExist() throws Exception { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsIT.java index a491feb..c8d9e16 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoLoadStatementsIT.java @@ -26,7 +26,7 @@ import java.util.Set; import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.InstanceDoesNotExistException; import org.apache.rya.api.client.RyaClient; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.bson.Document; import org.eclipse.rdf4j.model.Statement; import org.eclipse.rdf4j.model.ValueFactory; @@ -38,7 +38,7 @@ import com.mongodb.client.MongoCursor; /** * Integration tests the methods of {@link MongoLoadStatements}. */ -public class MongoLoadStatementsIT extends MongoITBase { +public class MongoLoadStatementsIT extends MongoRyaITBase { private static final ValueFactory VF = SimpleValueFactory.getInstance(); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoSetRyaStreamsConfigurationIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoSetRyaStreamsConfigurationIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoSetRyaStreamsConfigurationIT.java index 5fea578..42c4687 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoSetRyaStreamsConfigurationIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoSetRyaStreamsConfigurationIT.java @@ -28,13 +28,13 @@ import org.apache.rya.api.client.Install.InstallConfiguration; import org.apache.rya.api.client.InstanceDoesNotExistException; import org.apache.rya.api.client.RyaClient; import org.apache.rya.api.instance.RyaDetails.RyaStreamsDetails; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; /** * Integration tests the methods of {@link MongoSetRyaStreamsConfiguration}. */ -public class MongoSetRyaStreamsConfigurationIT extends MongoITBase { +public class MongoSetRyaStreamsConfigurationIT extends MongoRyaITBase { @Test(expected = InstanceDoesNotExistException.class) public void instanceDoesNotExist() throws Exception { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoUninstallIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoUninstallIT.java b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoUninstallIT.java index d9d1a6d..68f6f62 100644 --- a/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoUninstallIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/api/client/mongo/MongoUninstallIT.java @@ -30,7 +30,7 @@ import org.apache.rya.api.client.InstanceExists; import org.apache.rya.api.client.RyaClient; import org.apache.rya.api.client.RyaClientException; import org.apache.rya.api.client.Uninstall; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.junit.Test; import com.mongodb.MongoException; @@ -38,7 +38,7 @@ import com.mongodb.MongoException; /** * Integration tests the methods of {@link MongoUninstall}. */ -public class MongoUninstallIT extends MongoITBase { +public class MongoUninstallIT extends MongoRyaITBase { @Test public void uninstall() throws MongoException, RyaClientException { http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/IndexPlanValidatorTest.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/IndexPlanValidatorTest.java b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/IndexPlanValidatorTest.java index 92edfef..793a5de 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/IndexPlanValidatorTest.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/IndexPlanValidatorTest.java @@ -30,8 +30,8 @@ import org.apache.rya.indexing.mongodb.pcj.MongoPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.PCJOptimizer; import org.apache.rya.indexing.pcj.matching.provider.AbstractPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.provider.AccumuloIndexSetProvider; -import org.apache.rya.mongodb.EmbeddedMongoSingleton; import org.apache.rya.mongodb.StatefulMongoDBRdfConfiguration; +import org.apache.rya.test.mongo.EmbeddedMongoSingleton; import org.eclipse.rdf4j.query.algebra.Projection; import org.eclipse.rdf4j.query.algebra.TupleExpr; import org.eclipse.rdf4j.query.parser.ParsedQuery; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/entity/query/EntityQueryNodeIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/query/EntityQueryNodeIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/query/EntityQueryNodeIT.java index 833858a..e4ce395 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/query/EntityQueryNodeIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/query/EntityQueryNodeIT.java @@ -34,7 +34,7 @@ import org.apache.rya.indexing.entity.model.Property; import org.apache.rya.indexing.entity.model.Type; import org.apache.rya.indexing.entity.storage.EntityStorage; import org.apache.rya.indexing.entity.storage.mongo.MongoEntityStorage; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.test.mongo.MongoITBase; import org.eclipse.rdf4j.common.iteration.CloseableIteration; import org.eclipse.rdf4j.model.ValueFactory; import org.eclipse.rdf4j.model.impl.SimpleValueFactory; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoEntityStorageIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoEntityStorageIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoEntityStorageIT.java index 67595a9..55620d2 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoEntityStorageIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoEntityStorageIT.java @@ -36,7 +36,7 @@ import org.apache.rya.indexing.entity.storage.EntityStorage; import org.apache.rya.indexing.entity.storage.EntityStorage.EntityAlreadyExistsException; import org.apache.rya.indexing.entity.storage.EntityStorage.EntityStorageException; import org.apache.rya.indexing.entity.storage.EntityStorage.StaleUpdateException; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.test.mongo.MongoITBase; import org.eclipse.rdf4j.model.vocabulary.XMLSchema; import org.junit.Test; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoTypeStorageIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoTypeStorageIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoTypeStorageIT.java index d3342c0..00087db 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoTypeStorageIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/storage/mongo/MongoTypeStorageIT.java @@ -30,7 +30,7 @@ import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.indexing.entity.model.Type; import org.apache.rya.indexing.entity.storage.TypeStorage; import org.apache.rya.indexing.entity.storage.TypeStorage.TypeStorageException; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.test.mongo.MongoITBase; import org.junit.Test; import com.google.common.collect.ImmutableSet; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/entity/update/mongo/MongoEntityIndexerIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/update/mongo/MongoEntityIndexerIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/update/mongo/MongoEntityIndexerIT.java index b9e74bc..4ff2436 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/entity/update/mongo/MongoEntityIndexerIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/entity/update/mongo/MongoEntityIndexerIT.java @@ -22,9 +22,9 @@ import static org.junit.Assert.assertEquals; import java.util.Set; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaType; -import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.indexing.entity.model.Entity; import org.apache.rya.indexing.entity.model.Property; import org.apache.rya.indexing.entity.model.Type; @@ -32,7 +32,7 @@ import org.apache.rya.indexing.entity.storage.EntityStorage; import org.apache.rya.indexing.entity.storage.TypeStorage; import org.apache.rya.indexing.entity.storage.mongo.MongoEntityStorage; import org.apache.rya.indexing.entity.storage.mongo.MongoTypeStorage; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.model.vocabulary.RDF; import org.eclipse.rdf4j.model.vocabulary.XMLSchema; import org.junit.Test; @@ -43,7 +43,7 @@ import com.google.common.collect.Sets; /** * Integration tests the methods of {@link MongoEntityIndexer}. */ -public class MongoEntityIndexerIT extends MongoITBase { +public class MongoEntityIndexerIT extends MongoRyaITBase { private static final Type PERSON_TYPE = new Type(new RyaIRI("urn:person"), http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java index 79c5014..5bc6411 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java @@ -31,8 +31,8 @@ import org.apache.rya.indexing.mongodb.pcj.MongoPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.PCJOptimizer; import org.apache.rya.indexing.pcj.matching.provider.AbstractPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.provider.AccumuloIndexSetProvider; -import org.apache.rya.mongodb.EmbeddedMongoSingleton; import org.apache.rya.mongodb.StatefulMongoDBRdfConfiguration; +import org.apache.rya.test.mongo.EmbeddedMongoSingleton; import org.eclipse.rdf4j.query.algebra.Projection; import org.eclipse.rdf4j.query.algebra.QueryModelNode; import org.eclipse.rdf4j.query.algebra.StatementPattern; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest2.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest2.java b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest2.java index 54960c4..246a86e 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest2.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest2.java @@ -31,8 +31,8 @@ import org.apache.rya.indexing.mongodb.pcj.MongoPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.PCJOptimizer; import org.apache.rya.indexing.pcj.matching.provider.AbstractPcjIndexSetProvider; import org.apache.rya.indexing.pcj.matching.provider.AccumuloIndexSetProvider; -import org.apache.rya.mongodb.EmbeddedMongoSingleton; import org.apache.rya.mongodb.StatefulMongoDBRdfConfiguration; +import org.apache.rya.test.mongo.EmbeddedMongoSingleton; import org.eclipse.rdf4j.query.algebra.Projection; import org.eclipse.rdf4j.query.algebra.QueryModelNode; import org.eclipse.rdf4j.query.algebra.StatementPattern; http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java index db599ab..29ad3af 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java @@ -24,10 +24,10 @@ import static org.apache.rya.api.domain.RyaTypeUtils.dateRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.doubleRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.floatRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.intRyaType; +import static org.apache.rya.api.domain.RyaTypeUtils.iriRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.longRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.shortRyaType; import static org.apache.rya.api.domain.RyaTypeUtils.stringRyaType; -import static org.apache.rya.api.domain.RyaTypeUtils.iriRyaType; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -38,8 +38,8 @@ import java.util.List; import java.util.Map; import java.util.Set; -import org.apache.rya.api.domain.RyaSchema; import org.apache.rya.api.domain.RyaIRI; +import org.apache.rya.api.domain.RyaSchema; import org.apache.rya.api.resolver.RdfToRyaConversions; import org.apache.rya.api.resolver.RyaToRdfConversions; import org.apache.rya.indexing.entity.model.Entity; @@ -51,7 +51,7 @@ import org.apache.rya.indexing.entity.storage.mongo.ConvertingCursor; import org.apache.rya.indexing.mongodb.MongoDbSmartUri; import org.apache.rya.indexing.smarturi.SmartUriAdapter; import org.apache.rya.indexing.smarturi.SmartUriException; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.common.iteration.CloseableIteration; import org.eclipse.rdf4j.model.IRI; import org.eclipse.rdf4j.model.Value; @@ -74,7 +74,7 @@ import com.google.common.collect.Lists; /** * Tests for MongoDB based Smart URI. */ -public class MongoDbSmartUriIT extends MongoITBase { +public class MongoDbSmartUriIT extends MongoRyaITBase { private static final String NAMESPACE = RyaSchema.NAMESPACE; private static final ValueFactory VF = SimpleValueFactory.getInstance(); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndex2IT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndex2IT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndex2IT.java index 78da9cd..a8c8686 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndex2IT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndex2IT.java @@ -20,8 +20,8 @@ package org.apache.rya.indexing.mongo; import java.util.List; -import org.apache.rya.api.domain.RyaType; import org.apache.rya.api.domain.RyaIRI; +import org.apache.rya.api.domain.RyaType; import org.apache.rya.indexing.entity.EntityIndexOptimizer; import org.apache.rya.indexing.entity.model.Entity; import org.apache.rya.indexing.entity.model.Property; @@ -29,7 +29,7 @@ import org.apache.rya.indexing.entity.model.Type; import org.apache.rya.indexing.entity.query.EntityQueryNode; import org.apache.rya.indexing.entity.storage.EntityStorage; import org.apache.rya.indexing.entity.storage.TypeStorage; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.model.vocabulary.RDF; import org.eclipse.rdf4j.query.MalformedQueryException; import org.eclipse.rdf4j.query.algebra.QueryModelNode; @@ -44,7 +44,7 @@ import org.junit.Test; import com.google.common.collect.ImmutableSet; -public class MongoEntityIndex2IT extends MongoITBase { +public class MongoEntityIndex2IT extends MongoRyaITBase { private static final Type PERSON_TYPE = new Type(new RyaIRI("urn:person"), ImmutableSet.<RyaIRI>builder() http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndexIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndexIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndexIT.java index 3636448..4dae457 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndexIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoEntityIndexIT.java @@ -34,7 +34,7 @@ import org.apache.rya.indexing.entity.storage.EntityStorage; import org.apache.rya.indexing.entity.storage.TypeStorage; import org.apache.rya.indexing.entity.update.mongo.MongoEntityIndexer; import org.apache.rya.mongodb.MongoDBRdfConfiguration; -import org.apache.rya.mongodb.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.apache.rya.sail.config.RyaSailFactory; import org.eclipse.rdf4j.model.IRI; import org.eclipse.rdf4j.model.Value; @@ -52,7 +52,7 @@ import org.junit.Test; import com.google.common.collect.ImmutableSet; -public class MongoEntityIndexIT extends MongoITBase { +public class MongoEntityIndexIT extends MongoRyaITBase { private static final ValueFactory VF = SimpleValueFactory.getInstance(); @Override @@ -64,7 +64,7 @@ public class MongoEntityIndexIT extends MongoITBase { @Test public void ensureInEntityStore_Test() throws Exception { final Sail sail = RyaSailFactory.getInstance(conf); - SailRepositoryConnection conn = new SailRepository(sail).getConnection(); + final SailRepositoryConnection conn = new SailRepository(sail).getConnection(); conn.begin(); try(MongoEntityIndexer indexer = new MongoEntityIndexer()) { @@ -86,7 +86,7 @@ public class MongoEntityIndexIT extends MongoITBase { @Test public void sparqlQuery_Test() throws Exception { final Sail sail = RyaSailFactory.getInstance(conf); - SailRepositoryConnection conn = new SailRepository(sail).getConnection(); + final SailRepositoryConnection conn = new SailRepository(sail).getConnection(); conn.begin(); try(MongoEntityIndexer indexer = new MongoEntityIndexer()) { @@ -122,7 +122,7 @@ public class MongoEntityIndexIT extends MongoITBase { @Test public void partialQuery_Test() throws Exception { final Sail sail = RyaSailFactory.getInstance(conf); - SailRepositoryConnection conn = new SailRepository(sail).getConnection(); + final SailRepositoryConnection conn = new SailRepository(sail).getConnection(); conn.begin(); try(MongoEntityIndexer indexer = new MongoEntityIndexer()) { @@ -158,7 +158,7 @@ public class MongoEntityIndexIT extends MongoITBase { } } - private void setupTypes(MongoEntityIndexer indexer) throws Exception { + private void setupTypes(final MongoEntityIndexer indexer) throws Exception { final TypeStorage typeStore = indexer.getTypeStorage(); // Add some Types to the storage. final Type cat = new Type(new RyaIRI("urn:cat"), @@ -195,7 +195,7 @@ public class MongoEntityIndexIT extends MongoITBase { typeStore.create(person); } - private void addStatements(SailRepositoryConnection conn) throws Exception { + private void addStatements(final SailRepositoryConnection conn) throws Exception { //alice IRI subject = VF.createIRI("urn:alice"); IRI predicate = VF.createIRI("urn:name"); http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/2c1efd22/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerIT.java ---------------------------------------------------------------------- diff --git a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerIT.java b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerIT.java index 4d2c6ce..a836c3d 100644 --- a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerIT.java +++ b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoFreeTextIndexerIT.java @@ -24,15 +24,15 @@ import static org.junit.Assert.assertTrue; import java.util.HashSet; import java.util.Set; +import org.apache.rya.api.domain.RyaIRI; import org.apache.rya.api.domain.RyaStatement; import org.apache.rya.api.domain.RyaType; -import org.apache.rya.api.domain.RyaIRI; 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.MongoITBase; +import org.apache.rya.mongodb.MongoRyaITBase; import org.eclipse.rdf4j.common.iteration.CloseableIteration; import org.eclipse.rdf4j.model.IRI; import org.eclipse.rdf4j.model.Statement; @@ -47,7 +47,7 @@ import com.google.common.collect.Sets; /** * Integration tests the methods of {@link MongoFreeTextIndexer}. */ -public class MongoFreeTextIndexerIT extends MongoITBase { +public class MongoFreeTextIndexerIT extends MongoRyaITBase { private static final StatementConstraints EMPTY_CONSTRAINTS = new StatementConstraints(); @Test