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/25 00:04:11 UTC
svn commit: r1471720 - in /jena/Experimental/jena-jdbc:
jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/
jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/
jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc...
Author: rvesse
Date: Wed Apr 24 22:04:10 2013
New Revision: 1471720
URL: http://svn.apache.org/r1471720
Log:
More metadata tests
Added:
jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/
jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/TestRemoteConnectionMetadata.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/
jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/TestTdbConnectionMetadata.java
Modified:
jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/AbstractDatabaseMetadataTests.java
jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/TestMetaResultSet.java
jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/TestDatasetConnectionMetadata.java
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/AbstractDatabaseMetadataTests.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/AbstractDatabaseMetadataTests.java?rev=1471720&r1=1471719&r2=1471720&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/AbstractDatabaseMetadataTests.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/AbstractDatabaseMetadataTests.java Wed Apr 24 22:04:10 2013
@@ -18,9 +18,11 @@
package org.apache.jena.jdbc.metadata.results;
+import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
+import java.util.List;
import org.apache.jena.jdbc.connections.JenaConnection;
import org.apache.log4j.BasicConfigurator;
@@ -41,6 +43,14 @@ public abstract class AbstractDatabaseMe
protected abstract JenaConnection getConnection() throws SQLException;
+ protected abstract List<Integer> getSupportedTransactionLevels();
+
+ /**
+ * JDBC transaction levels
+ */
+ private static int[] TRANSACTION_LEVELS = new int[] { Connection.TRANSACTION_NONE, Connection.TRANSACTION_READ_COMMITTED,
+ Connection.TRANSACTION_READ_UNCOMMITTED, Connection.TRANSACTION_REPEATABLE_READ, Connection.TRANSACTION_SERIALIZABLE };
+
static {
// Init Log4j
BasicConfigurator.resetConfiguration();
@@ -52,7 +62,9 @@ public abstract class AbstractDatabaseMe
}
/**
- * Get type info and check the nullable column (regression for an issue encountered during debugging)
+ * Get type info and check the nullable column (regression for an issue
+ * encountered during debugging)
+ *
* @throws SQLException
*/
@Test
@@ -72,4 +84,30 @@ public abstract class AbstractDatabaseMe
conn.close();
Assert.assertTrue(typeInfo.isClosed());
}
+
+ /**
+ * Tests that reported transaction support is correct
+ *
+ * @throws SQLException
+ */
+ @Test
+ public void metadata_transaction_support() throws SQLException {
+ JenaConnection conn = this.getConnection();
+ DatabaseMetaData metadata = conn.getMetaData();
+
+ List<Integer> supportedLevels = this.getSupportedTransactionLevels();
+
+ // Expect transactions to report as supported if some supported levels
+ // are returned and either:
+ // 1 - There is more than one supported level
+ // 2 - There is one supported level which is not TRANSACTION_NONE
+ boolean expectedSupport = supportedLevels.size() > 0
+ && (supportedLevels.size() != 1 || (supportedLevels.size() == 1 && !supportedLevels.get(0).equals(
+ Connection.TRANSACTION_NONE)));
+ Assert.assertEquals(expectedSupport, metadata.supportsTransactions());
+
+ for (int level : TRANSACTION_LEVELS) {
+ Assert.assertEquals(supportedLevels.contains(level), metadata.supportsTransactionIsolationLevel(level));
+ }
+ }
}
Modified: jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/TestMetaResultSet.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/TestMetaResultSet.java?rev=1471720&r1=1471719&r2=1471720&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/TestMetaResultSet.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-core/src/test/java/org/apache/jena/jdbc/metadata/results/TestMetaResultSet.java Wed Apr 24 22:04:10 2013
@@ -42,452 +42,607 @@ import org.junit.Test;
/**
* Tests for the {@link MetaResultSet}
- *
+ *
*/
public class TestMetaResultSet {
-
+
/**
* Check empty meta result set
+ *
* @throws SQLException
*/
@Test
public void empty_meta_result_set_01() throws SQLException {
MetaResultSet results = new MetaResultSet(new ColumnInfo[0]);
-
- //Check results metadata
+
+ // Check results metadata
ResultSetMetaData metadata = results.getMetaData();
Assert.assertEquals(0, metadata.getColumnCount());
-
- //Check results
+
+ // Check results
Assert.assertTrue(results.isBeforeFirst());
Assert.assertFalse(results.next());
Assert.assertTrue(results.isAfterLast());
-
+
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Check empty meta result set with a single column
+ *
* @throws SQLException
*/
@Test
public void empty_meta_result_set_02() throws SQLException {
MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) });
-
- //Check results metadata
+
+ // Check results metadata
ResultSetMetaData metadata = results.getMetaData();
Assert.assertEquals(1, metadata.getColumnCount());
-
- //Check results
+
+ // Check results
Assert.assertTrue(results.isBeforeFirst());
Assert.assertFalse(results.next());
Assert.assertTrue(results.isAfterLast());
-
+
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Trying to create a meta result set with bad data is an error
+ *
* @throws SQLException
*/
- @Test(expected=SQLException.class)
+ @Test(expected = SQLException.class)
public void meta_result_set_bad_01() throws SQLException {
// Every row must have the correct number of columns
- new MetaResultSet(new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { } });
+ new MetaResultSet(new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { {} });
+ }
+
+ private MetaResultSet createMetaResultSet(int rows) throws SQLException {
+ ColumnInfo[] columns = new ColumnInfo[] { new IntegerColumn("Test", ResultSetMetaData.columnNoNulls, true) };
+ Object[][] rowData = new Object[rows][1];
+ for (int i = 0; i < rowData.length; i++) {
+ rowData[i][0] = (i + 1);
+ }
+ return new MetaResultSet(columns, rowData);
+ }
+
+ /**
+ * Test movement within meta results
+ *
+ * @throws SQLException
+ */
+ @Test
+ public void meta_result_set_movement_01() throws SQLException {
+ MetaResultSet results = createMetaResultSet(0);
+ Assert.assertTrue(results.isBeforeFirst());
+ Assert.assertFalse(results.next());
+ Assert.assertTrue(results.isAfterLast());
+
+ results.close();
+ Assert.assertTrue(results.isClosed());
+ }
+
+ /**
+ * Test movement within meta results
+ *
+ * @throws SQLException
+ */
+ @Test
+ public void meta_result_set_movement_02() throws SQLException {
+ MetaResultSet results = createMetaResultSet(1);
+ Assert.assertTrue(results.isBeforeFirst());
+
+ // Move forwards
+ Assert.assertTrue(results.next());
+ Assert.assertTrue(results.isFirst());
+ Assert.assertFalse(results.isBeforeFirst());
+ Assert.assertTrue(results.isLast());
+ Assert.assertFalse(results.isAfterLast());
+
+ // Move to end
+ Assert.assertFalse(results.next());
+ Assert.assertTrue(results.isAfterLast());
+
+ results.close();
+ Assert.assertTrue(results.isClosed());
+ }
+
+ /**
+ * Test movement within meta results
+ *
+ * @throws SQLException
+ */
+ @Test
+ public void meta_result_set_movement_03() throws SQLException {
+ MetaResultSet results = createMetaResultSet(1);
+ Assert.assertTrue(results.isBeforeFirst());
+
+ // Move forwards
+ Assert.assertTrue(results.next());
+ Assert.assertTrue(results.isFirst());
+ Assert.assertFalse(results.isBeforeFirst());
+ Assert.assertTrue(results.isLast());
+ Assert.assertFalse(results.isAfterLast());
+
+ // Move to end
+ Assert.assertFalse(results.next());
+ Assert.assertTrue(results.isAfterLast());
+
+ // Move backwards
+ Assert.assertTrue(results.previous());
+ Assert.assertTrue(results.isFirst());
+ Assert.assertFalse(results.isBeforeFirst());
+ Assert.assertTrue(results.isLast());
+ Assert.assertFalse(results.isAfterLast());
+
+ results.close();
+ Assert.assertTrue(results.isClosed());
+ }
+
+ /**
+ * Test movement within meta results
+ *
+ * @throws SQLException
+ */
+ @Test
+ public void meta_result_set_movement_04() throws SQLException {
+ MetaResultSet results = createMetaResultSet(1);
+ Assert.assertTrue(results.isBeforeFirst());
+
+ // Move to absolute row
+ Assert.assertTrue(results.absolute(1));
+ Assert.assertTrue(results.isFirst());
+ Assert.assertFalse(results.isBeforeFirst());
+ Assert.assertTrue(results.isLast());
+ Assert.assertFalse(results.isAfterLast());
+
+ // Move to end
+ Assert.assertFalse(results.next());
+ Assert.assertTrue(results.isAfterLast());
+
+ results.close();
+ Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_string_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { "value" } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { "value" } });
+
Assert.assertTrue(results.next());
String value = results.getString(1);
Assert.assertEquals("value", value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_string_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new StringColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
String value = results.getString(1);
Assert.assertEquals(null, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_boolean_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new BooleanColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { true } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new BooleanColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { true } });
+
Assert.assertTrue(results.next());
Assert.assertTrue(results.getBoolean(1));
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_boolean_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new BooleanColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new BooleanColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
Assert.assertFalse(results.getBoolean(1));
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_byte_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { (byte)0x10 } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable,
+ true) }, new Object[][] { { (byte) 0x10 } });
+
Assert.assertTrue(results.next());
byte value = results.getByte(1);
Assert.assertEquals(0x10, value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_byte_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable,
+ true) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
byte value = results.getByte(1);
Assert.assertEquals(0x0, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@SuppressWarnings("deprecation")
@Test
public void meta_result_set_date_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DateColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { new Date(2013, 4, 24) } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DateColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { new Date(2013, 4, 24) } });
+
Assert.assertTrue(results.next());
Date value = results.getDate(1);
Assert.assertEquals(new Date(2013, 4, 24), value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_date_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DateColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DateColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { null } });
+
Assert.assertTrue(results.next());
Date value = results.getDate(1);
Assert.assertEquals(null, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_time_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new TimeColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { new Time(0) } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new TimeColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { new Time(0) } });
+
Assert.assertTrue(results.next());
Time value = results.getTime(1);
Assert.assertEquals(new Time(0), value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_time_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new TimeColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new TimeColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { null } });
+
Assert.assertTrue(results.next());
Time value = results.getTime(1);
Assert.assertEquals(null, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_decimal_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DecimalColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { new BigDecimal("123.4") } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new DecimalColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { new BigDecimal("123.4") } });
+
Assert.assertTrue(results.next());
BigDecimal value = results.getBigDecimal(1);
Assert.assertEquals(new BigDecimal("123.4"), value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_decimal_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DecimalColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new DecimalColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
BigDecimal value = results.getBigDecimal(1);
Assert.assertEquals(null, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_double_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new DoubleColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { 0.123d } });
-
+ MetaResultSet results = new MetaResultSet(
+ new ColumnInfo[] { new DoubleColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { 0.123d } });
+
Assert.assertTrue(results.next());
double value = results.getDouble(1);
Assert.assertEquals(0.123d, value, 0d);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_double_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ByteColumn("Test", ResultSetMetaData.columnNullable,
+ true) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
double value = results.getDouble(1);
Assert.assertEquals(0d, value, 0d);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_float_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new FloatColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { 0.123f } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new FloatColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { 0.123f } });
+
Assert.assertTrue(results.next());
float value = results.getFloat(1);
Assert.assertEquals(0.123f, value, 0f);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_float_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new FloatColumn("Test", ResultSetMetaData.columnNullable) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new FloatColumn("Test", ResultSetMetaData.columnNullable) },
+ new Object[][] { { null } });
+
Assert.assertTrue(results.next());
float value = results.getFloat(1);
Assert.assertEquals(0f, value, 0f);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_integer_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new IntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { 1234 } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new IntegerColumn("Test", ResultSetMetaData.columnNullable,
+ true) }, new Object[][] { { 1234 } });
+
Assert.assertTrue(results.next());
int value = results.getInt(1);
Assert.assertEquals(1234, value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_integer_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new IntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new IntegerColumn("Test", ResultSetMetaData.columnNullable,
+ true) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
int value = results.getInt(1);
Assert.assertEquals(0, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_long_integer_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new LongIntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { 1234l } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new LongIntegerColumn("Test",
+ ResultSetMetaData.columnNullable, true) }, new Object[][] { { 1234l } });
+
Assert.assertTrue(results.next());
long value = results.getLong(1);
Assert.assertEquals(1234, value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_long_integer_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new LongIntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new LongIntegerColumn("Test",
+ ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
long value = results.getLong(1);
Assert.assertEquals(0, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_short_integer_01() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ShortIntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { (short)1234 } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ShortIntegerColumn("Test",
+ ResultSetMetaData.columnNullable, true) }, new Object[][] { { (short) 1234 } });
+
Assert.assertTrue(results.next());
short value = results.getShort(1);
- Assert.assertEquals((short)1234, value);
+ Assert.assertEquals((short) 1234, value);
Assert.assertFalse(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
}
-
+
/**
* Test retrieving meta column values
+ *
* @throws SQLException
*/
@Test
public void meta_result_set_short_integer_02() throws SQLException {
- MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ShortIntegerColumn("Test", ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
-
+ MetaResultSet results = new MetaResultSet(new ColumnInfo[] { new ShortIntegerColumn("Test",
+ ResultSetMetaData.columnNullable, true) }, new Object[][] { { null } });
+
Assert.assertTrue(results.next());
short value = results.getShort(1);
- Assert.assertEquals((short)0, value);
+ Assert.assertEquals((short) 0, value);
Assert.assertTrue(results.wasNull());
-
+
Assert.assertFalse(results.next());
results.close();
Assert.assertTrue(results.isClosed());
Modified: jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/TestDatasetConnectionMetadata.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/TestDatasetConnectionMetadata.java?rev=1471720&r1=1471719&r2=1471720&view=diff
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/TestDatasetConnectionMetadata.java (original)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-mem/src/test/java/org/apache/jena/jdbc/mem/metadata/TestDatasetConnectionMetadata.java Wed Apr 24 22:04:10 2013
@@ -18,7 +18,10 @@
package org.apache.jena.jdbc.mem.metadata;
+import java.sql.Connection;
import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
import org.apache.jena.jdbc.JdbcCompatibility;
import org.apache.jena.jdbc.connections.JenaConnection;
@@ -39,4 +42,11 @@ public class TestDatasetConnectionMetada
JenaConnection.DEFAULT_AUTO_COMMIT, JenaConnection.DEFAULT_ISOLATION_LEVEL, JdbcCompatibility.DEFAULT);
}
+ @Override
+ protected List<Integer> getSupportedTransactionLevels() {
+ List<Integer> levels = new ArrayList<Integer>();
+ levels.add(Connection.TRANSACTION_NONE);
+ return levels;
+ }
+
}
Added: jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/TestRemoteConnectionMetadata.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/TestRemoteConnectionMetadata.java?rev=1471720&view=auto
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/TestRemoteConnectionMetadata.java (added)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-remote/src/test/java/org/apache/jena/jdbc/remote/metadata/TestRemoteConnectionMetadata.java Wed Apr 24 22:04:10 2013
@@ -0,0 +1,79 @@
+/**
+ * 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.remote.metadata;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.jena.fuseki.BaseServerTest;
+import org.apache.jena.fuseki.ServerTest;
+import org.apache.jena.jdbc.JdbcCompatibility;
+import org.apache.jena.jdbc.connections.JenaConnection;
+import org.apache.jena.jdbc.metadata.results.AbstractDatabaseMetadataTests;
+import org.apache.jena.jdbc.remote.connections.RemoteEndpointConnection;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+
+/**
+ * Tests for database metadata for {@link RemoteEndpointConnection} instances
+ *
+ */
+public class TestRemoteConnectionMetadata extends AbstractDatabaseMetadataTests {
+
+ /**
+ * Setup for the tests by allocating a Fuseki instance to work with
+ */
+ @BeforeClass
+ public static void setup() {
+ ServerTest.allocServer();
+ }
+
+ /**
+ * Clean up after each test by resetting the Fuseki instance
+ */
+ @After
+ public void cleanupTest() {
+ ServerTest.resetServer();
+ }
+
+ /**
+ * Clean up after tests by de-allocating the Fuseki instance
+ */
+ @AfterClass
+ public static void cleanup() {
+ ServerTest.freeServer();
+ }
+
+ @Override
+ protected JenaConnection getConnection() throws SQLException {
+ return new RemoteEndpointConnection(BaseServerTest.serviceQuery, BaseServerTest.serviceUpdate, JenaConnection.DEFAULT_HOLDABILITY, JdbcCompatibility.DEFAULT);
+ }
+
+ @Override
+ protected List<Integer> getSupportedTransactionLevels() {
+ List<Integer> levels = new ArrayList<Integer>();
+ levels.add(Connection.TRANSACTION_NONE);
+ return levels;
+ }
+
+}
Added: jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/TestTdbConnectionMetadata.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/TestTdbConnectionMetadata.java?rev=1471720&view=auto
==============================================================================
--- jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/TestTdbConnectionMetadata.java (added)
+++ jena/Experimental/jena-jdbc/jena-jdbc-driver-tdb/src/test/java/org/apache/jena/jdbc/tdb/metadata/TestTdbConnectionMetadata.java Wed Apr 24 22:04:10 2013
@@ -0,0 +1,53 @@
+/**
+ * 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.metadata;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.jena.jdbc.JdbcCompatibility;
+import org.apache.jena.jdbc.connections.JenaConnection;
+import org.apache.jena.jdbc.metadata.results.AbstractDatabaseMetadataTests;
+import org.apache.jena.jdbc.tdb.connections.TDBConnection;
+
+import com.hp.hpl.jena.tdb.TDBFactory;
+
+/**
+ * Tests database metadata for TDB connections
+ * @author rvesse
+ *
+ */
+public class TestTdbConnectionMetadata extends AbstractDatabaseMetadataTests {
+
+ @Override
+ protected JenaConnection getConnection() throws SQLException {
+ return new TDBConnection(TDBFactory.createDataset(), JenaConnection.DEFAULT_HOLDABILITY,
+ JenaConnection.DEFAULT_AUTO_COMMIT, JdbcCompatibility.DEFAULT);
+ }
+
+ @Override
+ protected List<Integer> getSupportedTransactionLevels() {
+ List<Integer> levels = new ArrayList<Integer>();
+ levels.add(Connection.TRANSACTION_SERIALIZABLE);
+ return levels;
+ }
+
+}