MARMOTTA-438: added very basic infrastructure
Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/b76ed21b Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/b76ed21b Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/b76ed21b Branch: refs/heads/develop Commit: b76ed21be327c9822434d95d3fc6aec3bf4cf3a7 Parents: b8d367a Author: Sergio Fernández <[email protected]> Authored: Mon Mar 17 14:25:32 2014 +0100 Committer: Sergio Fernández <[email protected]> Committed: Mon Mar 17 14:25:32 2014 +0100 ---------------------------------------------------------------------- .../testsuite/LdpAbstractTestSuite.java | 73 ++++++++++++++++++++ .../testsuite/LdpResourcesTestSuite.java | 12 ++++ 2 files changed, 85 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/marmotta/blob/b76ed21b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpAbstractTestSuite.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpAbstractTestSuite.java b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpAbstractTestSuite.java new file mode 100644 index 0000000..e2453c3 --- /dev/null +++ b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpAbstractTestSuite.java @@ -0,0 +1,73 @@ +package org.apache.marmotta.platform.ldp.webservices.testsuite; + +import org.openrdf.repository.Repository; +import org.openrdf.repository.RepositoryConnection; +import org.openrdf.repository.RepositoryException; +import org.openrdf.repository.sail.SailRepository; +import org.openrdf.rio.RDFFormat; +import org.openrdf.rio.RDFParseException; +import org.openrdf.rio.Rio; +import org.openrdf.sail.memory.MemoryStore; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.io.InputStream; + +/** + * LDP Abstract Test Suite + * + * @author Sergio Fernández + * @see <a href="https://dvcs.w3.org/hg/ldpwg/raw-file/default/Test%20Cases/LDP%20Test%20Cases.html">Linked Data Platform 1.0 Test Cases</a> + */ +public abstract class LdpAbstractTestSuite { + + protected static Logger log = LoggerFactory.getLogger(LdpAbstractTestSuite.class); + + /** + * Load a dataset into a new in-memory repository + * + * @param file file name + * @return connection to the repository + * @throws RDFParseException + * @throws RepositoryException + * @throws IOException + */ + protected Repository loadDataset(String file) throws RDFParseException, RepositoryException, IOException { + log.debug("creating new in-memory repository..."); + Repository repo = new SailRepository(new MemoryStore()); + repo.initialize(); + RepositoryConnection conn = repo.getConnection(); + try { + conn.begin(); + conn.clear(); + loadDataset(conn, file); + conn.commit(); + } finally { + conn.close(); + } + return repo; + } + + /** + * Load a dataset to the connection passed + * + * @param conn connection + * @param file file name + * @throws RDFParseException + * @throws RepositoryException + * @throws IOException + */ + protected void loadDataset(RepositoryConnection conn, String file) throws RDFParseException, RepositoryException, IOException { + log.debug("loading dataset from {}...", file); + InputStream dataset = getClass().getResourceAsStream(file); + try { + conn.add(dataset, "", Rio.getParserFormatForFileName(file)); + } + finally { + dataset.close(); + } + log.debug("dataset successfully loaded"); + } + +} http://git-wip-us.apache.org/repos/asf/marmotta/blob/b76ed21b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpResourcesTestSuite.java ---------------------------------------------------------------------- diff --git a/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpResourcesTestSuite.java b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpResourcesTestSuite.java new file mode 100644 index 0000000..6861189 --- /dev/null +++ b/platform/marmotta-ldp/src/test/java/org/apache/marmotta/platform/ldp/webservices/testsuite/LdpResourcesTestSuite.java @@ -0,0 +1,12 @@ +package org.apache.marmotta.platform.ldp.webservices.testsuite; + +/** + * LDPRs Test Suite + * + * @author Sergio Fernández + */ +public class LdpResourcesTestSuite extends LdpAbstractTestSuite { + + + +}
