You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by rv...@apache.org on 2013/04/02 21:57:07 UTC
svn commit: r1463722 - in /jena/Experimental/jena-jdbc:
jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/
jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/
jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/
jena-jdbc-driver-mem/...
Author: rvesse
Date: Tue Apr 2 19:57:06 2013
New Revision: 1463722
URL: http://svn.apache.org/r1463722
Log:
Fix up some tests to account for the fact that TDB normalizes integer numerics to xsd:integer internally
Added:
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/AbstractTdbResultSetTests.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbDiskResultSets.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbMemResultSets.java
Removed:
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/TestTdbDiskResultSets.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/TestTdbMemResultSets.java
Modified:
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/JenaJdbcResultSet.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/JenaJdbcNodeUtils.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/AbstractResultSetTests.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/TestResultSets.java
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/JenaJdbcResultSet.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/JenaJdbcResultSet.java?rev=1463722&r1=1463721&r2=1463722&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/JenaJdbcResultSet.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/results/JenaJdbcResultSet.java Tue Apr 2 19:57:06 2013
@@ -304,13 +304,19 @@ public abstract class JenaJdbcResultSet
}
public short getShort(int columnIndex) throws SQLException {
- // TODO Auto-generated method stub
- return 0;
+ return this.getShort(this.findColumnLabel(columnIndex));
}
public short getShort(String columnLabel) throws SQLException {
- // TODO Auto-generated method stub
- return 0;
+ Node n = this.getNode(columnLabel);
+ if (n == null) {
+ this.setNull(true);
+ return 0;
+ } else {
+ // Try to marshal into an integer
+ this.setNull(false);
+ return JenaJdbcNodeUtils.toShort(n);
+ }
}
public String getString(int columnIndex) throws SQLException {
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/JenaJdbcNodeUtils.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/JenaJdbcNodeUtils.java?rev=1463722&r1=1463721&r2=1463722&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/JenaJdbcNodeUtils.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/main/java/org/apache/jena/jdbc/utils/JenaJdbcNodeUtils.java Tue Apr 2 19:57:06 2013
@@ -114,6 +114,29 @@ public class JenaJdbcNodeUtils {
}
/**
+ * Tries to convert a node to a short integer
+ * @param n Node
+ * @return Short Integer
+ * @throws SQLException Thrown if the node cannot be converted
+ */
+ public static short toShort(Node n) throws SQLException {
+ try {
+ if (n == null) return 0;
+ if (n.isLiteral()) {
+ return Short.parseShort(n.getLiteralLexicalForm());
+ } else {
+ throw new SQLException("Unable to marshal a non-literal to an integer");
+ }
+ } catch (SQLException e) {
+ // Throw as is
+ throw e;
+ } catch (Exception e) {
+ // Wrap other exceptions
+ throw new SQLException("Unable to marshal the value to an integer", e);
+ }
+ }
+
+ /**
* Tries to convert a node to an integer
* @param n Node
* @return Integer
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/AbstractResultSetTests.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/AbstractResultSetTests.java?rev=1463722&r1=1463721&r2=1463722&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/AbstractResultSetTests.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/results/AbstractResultSetTests.java Tue Apr 2 19:57:06 2013
@@ -86,7 +86,7 @@ public abstract class AbstractResultSetT
Literal objSimpleLiteral = m.createLiteral("simple");
Literal objLangLiteral = m.createLiteral("simple", "en");
Literal objBoolean = m.createTypedLiteral(true);
- Literal objByte = m.createTypedLiteral((byte)123);
+ Literal objByte = m.createTypedLiteral(Byte.toString((byte)123), TypeMapper.getInstance().getSafeTypeByName(XSD.xbyte.toString()));
Literal objDate = m.createTypedLiteral(Calendar.getInstance());
Literal objChar = m.createTypedLiteral('a');
Literal objDecimal = m.createTypedLiteral(new BigDecimal(123.4));
@@ -94,6 +94,7 @@ public abstract class AbstractResultSetT
Literal objFloat = m.createTypedLiteral(123.4f);
Literal objInteger = m.createTypedLiteral(1234);
Literal objLong = m.createTypedLiteral(1234l);
+ Literal objShort = m.createTypedLiteral(Short.toString((short)123), TypeMapper.getInstance().getSafeTypeByName(XSD.xshort.toString()));
Literal objString = m.createTypedLiteral("typed");
Literal objCustom = m.createTypedLiteral("custom", TypeMapper.getInstance().getSafeTypeByName("http://example/customType"));
@@ -116,6 +117,7 @@ public abstract class AbstractResultSetT
m.createStatement(subjUri, predUri, objFloat),
m.createStatement(subjUri, predUri, objInteger),
m.createStatement(subjUri, predUri, objLong),
+ m.createStatement(subjUri, predUri, objShort),
m.createStatement(subjUri, predUri, objString),
m.createStatement(subjUri, predUri, objCustom)
});
@@ -149,6 +151,14 @@ public abstract class AbstractResultSetT
return createDescribeResults(ds, query);
}
+ protected String getIntegerTypeUri() { return XSD.xint.toString(); }
+
+ protected String getByteTypeUri() { return XSD.xbyte.toString(); }
+
+ protected String getShortTypeUri() { return XSD.xshort.toString(); }
+
+ protected String getLongTypeUri() { return XSD.xlong.toString(); }
+
/**
* Test ASK results with a true result
* @throws SQLException
@@ -204,10 +214,11 @@ public abstract class AbstractResultSetT
* @throws SQLException
*/
@Test
- public void test_results_select_strings() throws SQLException {
+ public void test_results_select_strings_01() throws SQLException {
ResultSet rset = this.createSelectResults(ds, "SELECT (STR(?o) AS ?str) { ?s ?p ?o . FILTER(!ISBLANK(?o)) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
// Check all rows allow us to marshal strings OK
while (rset.next()) {
@@ -221,6 +232,28 @@ public abstract class AbstractResultSetT
}
/**
+ * Tests that SELECT result values can be marshalled to strings OK
+ * @throws SQLException
+ */
+ @Test
+ public void test_results_select_strings_02() throws SQLException {
+ ResultSet rset = this.createSelectResults(ds, "SELECT (STR(?o) AS ?str) { ?s ?p ?o . FILTER(!ISBLANK(?o)) }");
+ Assert.assertFalse(rset.isClosed());
+ Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
+
+ // Check all rows allow us to marshal strings OK
+ while (rset.next()) {
+ Assert.assertNotNull(rset.getNString("str"));
+ Assert.assertFalse(rset.wasNull());
+ }
+
+ Assert.assertTrue(rset.isAfterLast());
+ rset.close();
+ Assert.assertTrue(rset.isClosed());
+ }
+
+ /**
* Tests that SELECT result values can be marshalled to numerics OK
* @throws SQLException
*/
@@ -229,12 +262,14 @@ public abstract class AbstractResultSetT
ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(ISNUMERIC(?o)) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal big decimal OK
+ BigDecimal zero = new BigDecimal(0);
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
// Use decimal since all numeric types should be promotable to decimal
- Assert.assertNotEquals(0, rset.getBigDecimal("o"));
+ Assert.assertFalse(rset.getBigDecimal("o").equals(zero));
Assert.assertFalse(rset.wasNull());
}
@@ -249,14 +284,15 @@ public abstract class AbstractResultSetT
*/
@Test
public void test_results_select_integers() throws SQLException {
- ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + XSD.integer.toString() + ">) }");
+ ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + this.getIntegerTypeUri() + ">) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal integers OK
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
- Assert.assertNotEquals(0, rset.getInt("o"));
+ Assert.assertFalse(0 == rset.getInt("o"));
Assert.assertFalse(rset.wasNull());
}
@@ -271,14 +307,15 @@ public abstract class AbstractResultSetT
*/
@Test
public void test_results_select_bytes() throws SQLException {
- ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + XSD.xbyte.toString() + ">) }");
+ ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + this.getByteTypeUri() + "> && ?o <= 255) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal bytes OK
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
- Assert.assertNotEquals(0, rset.getByte("o"));
+ Assert.assertFalse((byte)0 == rset.getByte("o"));
Assert.assertFalse(rset.wasNull());
}
@@ -288,7 +325,7 @@ public abstract class AbstractResultSetT
}
/**
- * Tests that SELECT result values can be marshalled to bytes OK
+ * Tests that SELECT result values can be marshalled to floats OK
* @throws SQLException
*/
@Test
@@ -296,11 +333,12 @@ public abstract class AbstractResultSetT
ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + XSD.xfloat.toString() + ">) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal floats OK
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
- Assert.assertNotEquals(0, rset.getFloat("o"));
+ Assert.assertFalse(0f == rset.getFloat("o"));
Assert.assertFalse(rset.wasNull());
}
@@ -310,7 +348,7 @@ public abstract class AbstractResultSetT
}
/**
- * Tests that SELECT result values can be marshalled to bytes OK
+ * Tests that SELECT result values can be marshalled to doubles OK
* @throws SQLException
*/
@Test
@@ -318,11 +356,12 @@ public abstract class AbstractResultSetT
ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + XSD.xdouble.toString() + ">) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal doubles OK
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
- Assert.assertNotEquals(0, rset.getDouble("o"));
+ Assert.assertFalse(0d == rset.getDouble("o"));
Assert.assertFalse(rset.wasNull());
}
@@ -332,19 +371,43 @@ public abstract class AbstractResultSetT
}
/**
- * Tests that SELECT result values can be marshalled to bytes OK
+ * Tests that SELECT result values can be marshalled to longs OK
* @throws SQLException
*/
@Test
public void test_results_select_longs() throws SQLException {
- ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + XSD.xbyte.toString() + ">) }");
+ ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + this.getLongTypeUri() + ">) }");
Assert.assertFalse(rset.isClosed());
Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
- // Check all rows allow us to marshal strings OK
+ // Check all rows allow us to marshal longs OK
+ while (rset.next()) {
+ Assert.assertNotNull(rset.getString("o"));
+ Assert.assertFalse(0l == rset.getLong("o"));
+ Assert.assertFalse(rset.wasNull());
+ }
+
+ Assert.assertTrue(rset.isAfterLast());
+ rset.close();
+ Assert.assertTrue(rset.isClosed());
+ }
+
+ /**
+ * Tests that SELECT result values can be marshalled to shorts OK
+ * @throws SQLException
+ */
+ @Test
+ public void test_results_select_shorts() throws SQLException {
+ ResultSet rset = this.createSelectResults(ds, "SELECT ?o { ?s ?p ?o . FILTER(DATATYPE(?o) = <" + this.getShortTypeUri() + ">) }");
+ Assert.assertFalse(rset.isClosed());
+ Assert.assertTrue(rset.isBeforeFirst());
+ Assert.assertFalse(rset.isLast());
+
+ // Check all rows allow us to marshal shorts OK
while (rset.next()) {
Assert.assertNotNull(rset.getString("o"));
- Assert.assertNotEquals(0, rset.getLong("o"));
+ Assert.assertFalse((short)0 == rset.getShort("o"));
Assert.assertFalse(rset.wasNull());
}
Modified: jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/TestResultSets.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/TestResultSets.java?rev=1463722&r1=1463721&r2=1463722&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/TestResultSets.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/TestResultSets.java Tue Apr 2 19:57:06 2013
@@ -1,6 +1,20 @@
-/*
- * Copyright 2013 YarcData LLC All Rights Reserved.
- */
+/**
+ * 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.jena.jdbc.mem;
Added: jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/AbstractTdbResultSetTests.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/AbstractTdbResultSetTests.java?rev=1463722&view=auto
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/AbstractTdbResultSetTests.java (added)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/AbstractTdbResultSetTests.java Tue Apr 2 19:57:06 2013
@@ -0,0 +1,52 @@
+/**
+ * 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.jena.jdbc.tdb.results;
+
+import org.apache.jena.jdbc.mem.AbstractDatasetResultSetTests;
+
+import com.hp.hpl.jena.vocabulary.XSD;
+
+/**
+ * Abstract base class for TDB result set tests
+ *
+ */
+public abstract class AbstractTdbResultSetTests extends AbstractDatasetResultSetTests {
+
+ @Override
+ protected String getIntegerTypeUri() {
+ return XSD.integer.toString();
+ }
+
+ @Override
+ protected String getByteTypeUri() {
+ return XSD.integer.toString();
+ }
+
+ @Override
+ protected String getShortTypeUri() {
+ return XSD.integer.toString();
+ }
+
+ @Override
+ protected String getLongTypeUri() {
+ return XSD.integer.toString();
+ }
+
+
+}
Added: jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbDiskResultSets.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbDiskResultSets.java?rev=1463722&view=auto
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbDiskResultSets.java (added)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbDiskResultSets.java Tue Apr 2 19:57:06 2013
@@ -0,0 +1,49 @@
+/**
+ * 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.jena.jdbc.tdb.results;
+
+import java.sql.SQLException;
+
+import org.apache.jena.jdbc.utils.TestUtils;
+import org.junit.Rule;
+import org.junit.rules.TemporaryFolder;
+
+import com.hp.hpl.jena.query.Dataset;
+import com.hp.hpl.jena.tdb.TDBFactory;
+
+/**
+ * Tests for result sets using a disk backed TDB dataset
+ *
+ */
+public class TestTdbDiskResultSets extends AbstractTdbResultSetTests {
+
+ /**
+ * Temporary directory rule used to guarantee a unique temporary folder for each test method
+ */
+ @Rule
+ public TemporaryFolder tempDir = new TemporaryFolder();
+
+
+ @Override
+ protected Dataset prepareDataset(Dataset ds) throws SQLException {
+ Dataset tdb = TDBFactory.createDataset(tempDir.getRoot().getAbsolutePath());
+ TestUtils.copyDataset(ds, tdb, true);
+ return tdb;
+ }
+}
Added: jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbMemResultSets.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbMemResultSets.java?rev=1463722&view=auto
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbMemResultSets.java (added)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/results/TestTdbMemResultSets.java Tue Apr 2 19:57:06 2013
@@ -0,0 +1,40 @@
+/**
+ * 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.jena.jdbc.tdb.results;
+
+import java.sql.SQLException;
+
+import org.apache.jena.jdbc.utils.TestUtils;
+
+import com.hp.hpl.jena.query.Dataset;
+import com.hp.hpl.jena.tdb.TDBFactory;
+
+/**
+ * Tests for result sets using a in-memory TDB dataset
+ *
+ */
+public class TestTdbMemResultSets extends AbstractTdbResultSetTests {
+
+ @Override
+ protected Dataset prepareDataset(Dataset ds) throws SQLException {
+ Dataset tdb = TDBFactory.createDataset();
+ TestUtils.copyDataset(ds, tdb, true);
+ return tdb;
+ }
+}