diff options
author | Jesse Wilson <jessewilson@google.com> | 2011-01-28 18:02:41 -0800 |
---|---|---|
committer | Jesse Wilson <jessewilson@google.com> | 2011-01-28 18:02:41 -0800 |
commit | 99aa85175f733e896d6cc01e968933a02e997bc2 (patch) | |
tree | fb33029cd0a7a61645d2941738aa651256f0c834 /luni/src/test/java/tests/sql/ConnectionTest.java | |
parent | 38db242d16a5a31fd86c519b817ae94c5fc89417 (diff) | |
download | libcore-99aa85175f733e896d6cc01e968933a02e997bc2.zip libcore-99aa85175f733e896d6cc01e968933a02e997bc2.tar.gz libcore-99aa85175f733e896d6cc01e968933a02e997bc2.tar.bz2 |
Scrub libcore's SQLite and JDBC tests.
I've moved the tests to the libcore package because they're
maintained by Androids, unlike the tests.* classes maintained
by Apache Harmony.
Change-Id: I23b5ca845517129f426addeabc38e43a8fee4299
Diffstat (limited to 'luni/src/test/java/tests/sql/ConnectionTest.java')
-rwxr-xr-x | luni/src/test/java/tests/sql/ConnectionTest.java | 2807 |
1 files changed, 0 insertions, 2807 deletions
diff --git a/luni/src/test/java/tests/sql/ConnectionTest.java b/luni/src/test/java/tests/sql/ConnectionTest.java deleted file mode 100755 index efa8aa4..0000000 --- a/luni/src/test/java/tests/sql/ConnectionTest.java +++ /dev/null @@ -1,2807 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed 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 tests.sql; - -import dalvik.annotation.KnownFailure; -import dalvik.annotation.TestTargetClass; -import dalvik.annotation.TestTargets; -import dalvik.annotation.TestLevel; -import dalvik.annotation.TestTargetNew; - -import java.io.IOException; -import java.sql.Connection; -import java.sql.DatabaseMetaData; -import java.sql.DriverManager; -import java.sql.SQLWarning; -import java.sql.Savepoint; -import java.sql.Statement; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -import java.sql.CallableStatement; -import java.util.Map; - -import junit.framework.Test; - -@TestTargetClass(Connection.class) -public class ConnectionTest extends SQLTest { - - /** - * @test {@link java.sql.Connection#createStatement()} - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "", - method = "createStatement", - args = {} - ) - public void testCreateStatement() { - - Statement statement = null; - try { - statement = conn.createStatement(); - assertNotNull(statement); - //check default values - assertEquals(ResultSet.FETCH_UNKNOWN, statement.getFetchDirection()); - assertNull(statement.getWarnings()); - assertTrue(statement.getQueryTimeout() > 0); - } catch (SQLException sqle) { - fail("SQL Exception was thrown: " + sqle.getMessage()); - } catch (Exception e) { - fail("Unexpected Exception " + e.getMessage()); - } - try { - conn.close(); - statement.executeQuery("select * from zoo"); - fail("SQLException is not thrown after close"); - } catch (SQLException e) { - // expected - } - } - - /** - * @test {@link java.sql.Connection#createStatement(int resultSetType, int - * resultSetConcurrency)} - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "Exception tests fail.", - method = "createStatement", - args = {int.class, int.class} - ) - @KnownFailure("Scrolling on a forward only RS not allowed. conn.close() does not wrap up") - public void testCreateStatement_int_int() throws SQLException { - Statement st = null; - ResultSet rs = null; - - // test read only - try { - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.deleteRow(); - fail("Could delete row for READ_ONLY ResultSet"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (Exception ee) { - } - } - - // test forward only: scrolling not allowed - try { - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.absolute(1); - rs.previous(); - fail("Could scroll backwards"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (Exception ee) { - } - } - - // test forward only - try { - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.last(); - rs.first(); - fail("Could scroll backwards"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (Exception ee) { - } - } - - - // test updating ResultSets - try { - st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("parrot", (rs.getString(1))); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (Exception ee) { - } - } - - try { - st = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("bird", (rs.getString(1))); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (Exception ee) { - } - } - - conn.close(); - - try { - // exception is not specified for this case - conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, -1); - fail("Illigal arguments: should return exception."); - } catch (SQLException sqle) { - // expected - } - - try { - // exception is not specified for this case - conn.createStatement(Integer.MIN_VALUE, ResultSet.CONCUR_READ_ONLY); - fail("Illigal arguments: should return exception."); - } catch (SQLException sqle) { - // expected - } - } - - /** - * @test java.sql.Connection#createStatement(int resultSetType, int - * resultSetConcurrency, int resultSetHoldability) - */ - @TestTargetNew( - level = TestLevel.PARTIAL_COMPLETE, - notes = "ResultSet.HOLD_CURSORS_AT_COMMIT", - method = "createStatement", - args = {int.class, int.class, int.class} - ) - public void testCreateStatement_int_int_int() { - Statement st = null; - try { - assertNotNull(conn); - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.HOLD_CURSORS_OVER_COMMIT); - assertNotNull(st); - st.execute("select id, name from zoo"); - ResultSet rs = st.getResultSet(); - rs.next(); - int pos = rs.getRow(); - conn.commit(); - assertEquals("ResultSet cursor position has changed",pos, rs.getRow()); - try { - rs.close(); - } catch (SQLException sqle) { - fail("Unexpected exception was thrown during closing ResultSet"); - } - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - if (st != null) st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, -100); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - //ok - } - - } - - @TestTargetNew( - level = TestLevel.PARTIAL_COMPLETE, - notes = "ResultSet.CLOSE_CURSORS_AT_COMMIT as argument is not supported", - method = "createStatement", - args = {int.class, int.class, int.class} - ) - @KnownFailure("not supported") - public void testCreateStatementIntIntIntNotSupported() { - Statement st = null; - try { - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.CLOSE_CURSORS_AT_COMMIT); - assertNotNull(st); - st.execute("select id, name from zoo"); - ResultSet rs = st.getResultSet(); - - try { - rs.close(); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - if (st != null) { - try { - st.close(); - } catch (SQLException ee) { - } - } - } - } - - /** - * @test java.sql.Connection#getMetaData() - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "SQLException test fails", - method = "getMetaData", - args = {} - ) - @KnownFailure("conn.close() does not wrap up") - public void testGetMetaData() throws SQLException{ - try { - DatabaseMetaData md = conn.getMetaData(); - Connection con = md.getConnection(); - assertEquals(conn, con); - } catch (SQLException e) { - fail("SQLException is thrown"); - } - - conn.close(); - try { - conn.getMetaData(); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#clearWarnings() - * - * TODO clearWarnings is not supported - */ - @TestTargetNew( - level = TestLevel.SUFFICIENT, - notes = "test fails. not supported. always returns null.", - method = "clearWarnings", - args = {} - ) - @KnownFailure("not supported") - public void testClearWarnings() throws SQLException { - - try { - SQLWarning w = conn.getWarnings(); - assertNull(w); - } catch (Exception e) { - fail("Unexpected Exception: " + e.getMessage()); - } - - - Statement st = null; - try { - st = conn.createStatement(); - st.execute("select animals from zoo"); - fail("SQLException was not thrown"); - } catch (SQLException e) { - assertNotNull(conn.getWarnings()); - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.clearWarnings(); - SQLWarning w = conn.getWarnings(); - assertNull(w); - } catch (Exception e) { - fail("Unexpected Exception: " + e.getMessage()); - } - - try { - st = conn.createStatement(); - st.execute("select monkey from zoo"); - fail("SQLException was not thrown"); - } catch (SQLException e) { - assertEquals("SQLite.Exception: error in prepare/compile",e.getMessage()); - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - //Test for correct functionality - try { - SQLWarning w = conn.getWarnings(); - assertNotNull(w); - } catch (Exception e) { - fail("Unexpected Exception: " + e.getMessage()); - } - - conn.close(); - try { - conn.clearWarnings(); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - - } - - - /** - * @throws SQLException - * @test java.sql.Connection#getWarnings() - * - * TODO GetWarnings is not supported: returns null - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported. always returns null. SQLException test fails", - method = "getWarnings", - args = {} - ) - @KnownFailure("not supported") - public void testGetWarnings() throws SQLException { - Statement st = null; - int errorCode1 = -1; - int errorCode2 = -1; - - try { - st = conn.createStatement(); - st.execute("select animals from zoooo"); - fail("SQLException was not thrown"); - } catch (SQLException e) { - // expected - errorCode1 = e.getErrorCode(); - } - - try { - SQLWarning wrs = conn.getWarnings(); - assertNull(wrs); - } catch (Exception e) { - fail("Change test implementation: get warnings is supported now"); - } - - // tests implementation: but errorcodes need to change too -> change impl. - /* - Statement st = null; - int errorCode1 = -1; - int errorCode2 = -1; - - try { - st = conn.createStatement(); - st.execute("select animals from zoooo"); - fail("SQLException was not thrown"); - } catch (SQLException e) { - // expected - errorCode1 = e.getErrorCode(); - } - - try { - SQLWarning wrs = conn.getWarnings(); - assertNotNull(wrs); - assertEquals(errorCode1, wrs.getErrorCode()); - assertNull(wrs.getNextWarning()); - } catch (Exception e) { - fail("Unexpected Exception: " + e.getMessage()); - } - try { - st.execute("select horse from zoooooo"); - } catch (SQLException e) { - // expected - errorCode2 = e.getErrorCode(); - } - - try { - SQLWarning wrs = conn.getWarnings(); - assertEquals(errorCode1, wrs.getErrorCode()); - assertNotNull(wrs.getNextWarning()); - assertEquals(errorCode2, wrs.getErrorCode()); - } catch (Exception e) { - fail("Unexpected Exception: " + e.getMessage()); - } - - try { - st.close(); - } catch (SQLException ee) { - } - - */ - - conn.close(); - try { - conn.getWarnings(); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - } - - /** - * @test java.sql.Connection#getAutoCommit() - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "SQLException checking missed", - method = "getAutoCommit", - args = {} - ) - public void testGetAutoCommit() { - try { - conn.setAutoCommit(true); - assertTrue(conn.getAutoCommit()); - conn.setAutoCommit(false); - assertFalse(conn.getAutoCommit()); - conn.setAutoCommit(true); - assertTrue(conn.getAutoCommit()); - - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } - } - - /** - * @test java.sql.Connection#setAutoCommit(boolean) - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "SQLException test throws exception", - method = "setAutoCommit", - args = {boolean.class} - ) - @KnownFailure("conn.close() does not wrap up") - public void testSetAutoCommit() throws SQLException { - - Statement st = null; - ResultSet rs = null; - ResultSet rs1 = null; - try { - conn.setAutoCommit(true); - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Chichichi', 'monkey');"); - conn.commit(); - } catch (SQLException e) { - //ok - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - // even though exception was thrown value is committed - try { - st = conn.createStatement(); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(3, getCount(rs)); - } catch (SQLException e) { - fail("Unexpected Exception thrown"); - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - - try { - conn.setAutoCommit(false); - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (4, 'Burenka', 'cow');"); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(4, getCount(rs)); - conn.commit(); - // Check cursors closed after commit - rs1 = st.getResultSet(); - assertEquals(0, getCount(rs1)); - - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - rs1.close(); - st.close(); - } catch (SQLException ee) { - } - } - - conn.close(); - - try { - conn.setAutoCommit(true); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#isReadOnly() - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "Instead of SQLException nullpointer exception is thrown.", - method = "isReadOnly", - args = {} - ) - @KnownFailure("conn.close() does not wrap up") - public void testIsReadOnly() throws SQLException { - try { - conn.setReadOnly(true); - assertTrue(conn.isReadOnly()); - conn.setReadOnly(false); - assertFalse(conn.isReadOnly()); - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.getMessage()); - } - - conn.close(); - try { - conn.isReadOnly(); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#setReadOnly(boolean) - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "Not supported. test fails", - method = "setReadOnly", - args = {boolean.class} - ) - @KnownFailure("not supported") - public void testSetReadOnly() throws SQLException { - - // Pseudo test: not supported test - Statement st = null; - try { - conn.setReadOnly(true); - st = conn.createStatement(); - st.execute("insert into zoo (id, name, family) values (3, 'ChiChiChi', 'monkey');"); - // fail("SQLException is not thrown"); - } catch (SQLException sqle) { - fail("Set readonly is actually implemented: activate correct test"); - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - // test for correct implementation - st = null; - try { - conn.setReadOnly(true); - st = conn.createStatement(); - st.execute("insert into zoo (id, name, family) values (3, 'ChiChiChi', 'monkey');"); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.setReadOnly(true); - st = conn.createStatement(); - st.executeUpdate("insert into zoo (id, name, family) values (4, 'ChaChaCha', 'monkey');"); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.setReadOnly(false); - st = conn.createStatement(); - st.execute("insert into zoo (id, name, family) values (4, 'ChiChiChi', 'monkey');"); - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.getMessage()); - } finally { - try { - st.close(); - } catch (SQLException ee) { - } - } - - conn.close(); - try { - conn.setReadOnly(true); - fail("Exception expected"); - } catch (SQLException e) { - //ok - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#getHoldability() - * - * TODO ResultSet.CLOSE_CURSORS_AT_COMMIT is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "+option ResultSet.CLOSE_CURSORS_AT_COMMIT not supported. SQLException test fails.", - method = "getHoldability", - args = {} - ) - @KnownFailure("not supported") - public void testGetHoldability() throws SQLException { - try { - conn.setHoldability(ResultSet.HOLD_CURSORS_OVER_COMMIT); - assertEquals(ResultSet.HOLD_CURSORS_OVER_COMMIT, conn - .getHoldability()); - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.getMessage()); - } - - try { - conn.setHoldability(ResultSet.CLOSE_CURSORS_AT_COMMIT); - assertEquals(ResultSet.CLOSE_CURSORS_AT_COMMIT, conn - .getHoldability()); - } catch (SQLException e) { - assertEquals("not supported", e.getMessage()); - } - - // Exception checking - - conn.close(); - - try { - conn.getHoldability(); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - } - - /** - * @test java.sql.Connection#setHoldability(int) - * - * TODO ResultSet.CLOSE_CURSORS_AT_COMMIT is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "ResultSet.CLOSE_CURSORS_AT_COMMIT is not supported", - method = "setHoldability", - args = {int.class} - ) - @KnownFailure("not supported") - public void testSetHoldability() { - Statement st = null; - try { - conn.setAutoCommit(false); - conn.setHoldability(ResultSet.CLOSE_CURSORS_AT_COMMIT); - assertEquals(ResultSet.CLOSE_CURSORS_AT_COMMIT, conn - .getHoldability()); - st = conn.createStatement(); - st.execute("insert into zoo (id, name, family) values (4, 'ChiChiChi', 'monkey');"); - ResultSet rs = st.getResultSet(); - conn.commit(); - try { - rs.next(); - } catch (SQLException sqle) { - //ok - } - conn.setHoldability(ResultSet.HOLD_CURSORS_OVER_COMMIT); - assertEquals(ResultSet.HOLD_CURSORS_OVER_COMMIT, conn - .getHoldability()); - st = conn.createStatement(); - st.execute("insert into zoo (id, name, family) values (4, 'ChiChiChi', 'monkey');"); - rs = st.getResultSet(); - conn.commit(); - try { - rs.next(); - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.getMessage()); - } - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.getMessage()); - } finally { - try { - st.close(); - } catch (Exception ee) { - } - } - - try { - conn.setHoldability(-1); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#getTransactionIsolation() - * - * TODO only Connection.TRANSACTION_SERIALIZABLE is supported - */ - @TestTargetNew( - level = TestLevel.SUFFICIENT, - notes = "SQLException testing throws exception. Connection.TRANSACTION_SERIALIZABLE.", - method = "getTransactionIsolation", - args = {} - ) - @KnownFailure("not supported") - public void testGetTransactionIsolation() throws SQLException { - try { - conn - .setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); - assertEquals(Connection.TRANSACTION_READ_UNCOMMITTED, conn - .getTransactionIsolation()); - conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); - assertEquals(Connection.TRANSACTION_READ_COMMITTED, conn - .getTransactionIsolation()); - conn - .setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ); - assertEquals(Connection.TRANSACTION_REPEATABLE_READ, conn - .getTransactionIsolation()); - conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE); - assertEquals(Connection.TRANSACTION_SERIALIZABLE, conn - .getTransactionIsolation()); - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - - // Exception checking - - conn.close(); - - try { - conn.getTransactionIsolation(); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - } - - /** - * @throws SQLException - * @test java.sql.Connection#getTransactionIsolation() - * - * TODO only Connection.TRANSACTION_SERIALIZABLE is supported - */ - @TestTargetNew( - level = TestLevel.PARTIAL_COMPLETE, - notes = "not supported options", - method = "getTransactionIsolation", - args = {} - ) - public void testGetTransactionIsolationNotSupported() throws SQLException { - /* - try { - conn - .setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); - assertEquals(Connection.TRANSACTION_READ_UNCOMMITTED, conn - .getTransactionIsolation()); - conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); - assertEquals(Connection.TRANSACTION_READ_COMMITTED, conn - .getTransactionIsolation()); - conn - .setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ); - assertEquals(Connection.TRANSACTION_REPEATABLE_READ, conn - .getTransactionIsolation()); - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - */ - } - - /** - * @test java.sql.Connection#setTransactionIsolation(int) - * - * TODO only Connection.TRANSACTION_SERIALIZABLE is supported - */ - @TestTargetNew( - level = TestLevel.SUFFICIENT, - notes = "not fully supported", - method = "setTransactionIsolation", - args = {int.class} - ) - public void testSetTransactionIsolation() { - try { -// conn -// .setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); -// assertEquals(Connection.TRANSACTION_READ_UNCOMMITTED, conn -// .getTransactionIsolation()); -// conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); -// assertEquals(Connection.TRANSACTION_READ_COMMITTED, conn -// .getTransactionIsolation()); -// conn -// .setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ); -// assertEquals(Connection.TRANSACTION_REPEATABLE_READ, conn -// .getTransactionIsolation()); - conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE); - assertEquals(Connection.TRANSACTION_SERIALIZABLE, conn - .getTransactionIsolation()); - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - - try { - conn.setTransactionIsolation(0); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - - /** - * @test java.sql.Connection#setCatalog(String catalog) - * - * TODO setCatalog method does nothing: Hint default catalog sqlite_master. - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "setCatalog", - args = {java.lang.String.class} - ) - public void testSetCatalog() { - - String[] catalogs = { "test", "test1", "test" }; - Statement st = null; - try { - for (int i = 0; i < catalogs.length; i++) { - conn.setCatalog(catalogs[i]); - assertNull(catalogs[i], conn.getCatalog()); - st = conn.createStatement(); - st - .equals("create table test_table (id integer not null, name varchar(20), primary key(id));"); - st.equals("drop table test_table;"); - - } - } catch (SQLException sqle) { - fail("SQLException is thrown"); - } finally { - try { - st.close(); - } catch (Exception ee) { - } - } - - /* - String[] catalogs = { "test"}; - Statement st = null; - try { - for (int i = 0; i < catalogs.length; i++) { - conn.setCatalog(catalogs[i]); - fail("illegal catalog name"); - assertEquals(catalogs[i], conn.getCatalog()); - st = conn.createStatement(); - st - .equals("create table test_table (id integer not null, name varchar(20), primary key(id));"); - st.equals("drop table test_table;"); - } - } catch (SQLException sqle) { - System.out.println("TODO: Test for correct error message: name with ,\"sqlite_\" prefix expected"); - } finally { - try { - st.close(); - } catch (Exception ee) { - } - } - - String[] catalogs = { "sqlite_test", "sqlite_test1", "sqlite_test" }; - Statement st = null; - try { - for (int i = 0; i < catalogs.length; i++) { - conn.setCatalog(catalogs[i]); - assertEquals(catalogs[i], conn.getCatalog()); - st = conn.createStatement(); - st - .equals("create table test_table (id integer not null, name varchar(20), primary key(id));"); - st.equals("drop table test_table;"); - - } - } catch (SQLException sqle) { - fail("SQLException is thrown"); - } finally { - try { - st.close(); - } catch (Exception ee) { - } - } - - try { - conn.setCatalog(null); - fail("SQLException is not thrown"); - } catch (SQLException e) { - // expected - } - - try { - conn.setCatalog("not_exist"); - fail("SQLException is not thrown"); - } catch (SQLException e) { - // expected - } - */ - } - - /** - * @throws SQLException - * @test java.sql.Connection#getCatalog() - * - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported. test fails", - method = "getCatalog", - args = {} - ) - @KnownFailure("not supported") - public void testGetCatalog() throws SQLException { - - - // test default catalog - try { - assertEquals("sqlite_master", conn.getCatalog()); - } catch (SQLException sqle) { - fail("SQL Exception " + sqle.getMessage()); - } catch (Exception e) { - fail("Unexpected Exception " + e.getMessage()); - } - - - String[] catalogs = { "sqlite_test", "sqlite_test1", "sqlite_test" }; - Statement st = null; - try { - for (int i = 0; i < catalogs.length; i++) { - conn.setCatalog(catalogs[i]); - assertNull(conn.getCatalog()); - } - } catch (SQLException sqle) { - fail("SQL Exception " + sqle.getMessage()); - } catch (Exception e) { - fail("Reeimplement tests now that the method is implemented"); - } - - // Exception checking - - conn.close(); - - try { - conn.getCatalog(); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - } - - /** - * @test java.sql.Connection#setTypeMap(Map<String,Class<?>> map) - * - * TODO setTypeMap is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "setTypeMap", - args = {java.util.Map.class} - ) - public void testSetTypeMap() { - /* - try { - java.util.Map map = conn.getTypeMap(); - map - .put( - "org.apache.harmony.sql.tests.java.sql.TestHelper_Connection1", - Class.forName("TestHelper_Connection1")); - conn.setTypeMap(map); - assertEquals(map, conn.getTypeMap()); - } catch (SQLException sqle) { - //ok - } catch (Exception e) { - fail("Unexpected Exception " + e.getMessage()); - } - - try { - conn.setTypeMap(null); - fail("SQLException is not thrown"); - } catch (SQLException e) { - // expected - } - */ - } - - /** - * @throws SQLException - * @test java.sql.Connection#getTypeMap() - * - * TODO getTypeMap is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "getTypeMap", - args = {} - ) - public void testGetTypeMap() throws SQLException { - /* - try { - java.util.Map map = conn.getTypeMap(); - map - .put( - "org.apache.harmony.sql.tests.java.sql.TestHelper_Connection1", - Class.forName("TestHelper_Connection1")); - conn.setTypeMap(map); - assertEquals(map, conn.getTypeMap()); - } catch (SQLException sqle) { - //ok - } catch (Exception e) { - fail("Unexpected Exception " + e.getMessage()); - } - -// Exception checking - - conn.close(); - - try { - conn.setTypeMap(null); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - */ - } - - /** - * @test java.sql.Connection#nativeSQL(String sql) - * - * TODO nativeSQL is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "nativeSQL", - args = {java.lang.String.class} - ) - public void testNativeSQL() throws SQLException{ - String[] queries = { - "select * from zoo;", - "insert into zoo (id, name, family) values (3, 'Chichichi', 'monkey');", - "create table zoo_office(id integer not null, name varchar(20), primary key(id));", - "drop table zoo_office;" }; - String[] native_queries = { - "select * from zoo;", - "insert into zoo (id, name, family) values (3, 'Chichichi', 'monkey');", - "create table zoo_office(id integer not null, name varchar(20), primary key(id));", - "drop table zoo_office;" }; - Statement st = null; - String nativeQuery = ""; - try { - for (int i = 0; i < queries.length; i++) { - nativeQuery = conn.nativeSQL(queries[i]); - assertEquals(native_queries[i], nativeQuery); - st = conn.createStatement(); - st.execute(nativeQuery); - } - } catch (SQLException sqle) { - //ok - } catch (Exception e) { - fail("Unexpected Exception " + e.getMessage()); - } finally { - try { - st.close(); - } catch (Exception ee) { - } - } - - String[] inc_queries = { "", " ", "not query" }; - for (int i = 0; i < inc_queries.length; i++) { - try { - nativeQuery = conn.nativeSQL(inc_queries[i]); - assertEquals(inc_queries[i], nativeQuery); - } catch (SQLException e) { - assertEquals("not supported",e.getMessage()); - } - } - - // Exception checking - - conn.close(); - - try { - conn.nativeSQL(inc_queries[0]); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - - } - - /** - * @test java.sql.Connection#prepareCall(String sql) - * - * TODO prepareCall is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "prepareCall", - args = {java.lang.String.class} - ) - public void testPrepareCall() throws SQLException { - CallableStatement cstmt = null; - ResultSet rs = null; - ResultSet rs1 = null; - Statement st = null; - Statement st1 = null; - try { - cstmt = conn.prepareCall("call welcomeAnimal(3, 'Petya', 'Cock')"); - st = conn.createStatement(); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(2, getCount(rs)); - cstmt.execute(); - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(3, getCount(rs1)); - - } catch (SQLException e) { - //ok not supported - } finally { - try { - st.close(); - st1.close(); - rs.close(); - rs1.close(); - cstmt.close(); - } catch (Exception ee) { - } - } - - - try { - conn.prepareCall("welcomeAnimal(4, 'Petya', 'Cock')"); - fail("SQL Exception is not thrown"); - } catch (SQLException e) { - // expected - } - - try { - conn.prepareCall(null); - fail("SQL Exception is not thrown"); - } catch (SQLException e) { - // expected - } - - // Exception checking - - conn.close(); - - try { - conn.prepareCall(""); - fail("Could execute statement on closed connection."); - } catch (SQLException e) { - //ok - } - - } - - /** - * @test java.sql.Connection#prepareCall(String sql, int resultSetType, int - * resultSetConcurrency) - * - * TODO prepareCall is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "prepareCall", - args = {java.lang.String.class, int.class, int.class} - ) - public void testPrepareCall_String_int_int() { - CallableStatement cstmt = null; - ResultSet rs = null; - - try { - String query = "call welcomeAnimal(3, 'Petya', 'Cock')"; - cstmt = conn.prepareCall(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - } catch (SQLException e) { - //ok - } - - /* - try { - String query = "call welcomeAnimal(3, 'Petya', 'Dino')"; - cstmt = conn.prepareCall(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - cstmt.execute("select id, name from zoo"); - rs = cstmt.getResultSet(); - try { - rs.deleteRow(); - fail("Can delete row for READ_ONLY ResultSet"); - } catch (SQLException sqle) { - // expected - } - - try { - rs.absolute(0); - fail("Can move cursor to the last position for TYPE_FORWARD_ONLY ResultSet"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - cstmt.close(); - } catch (Exception ee) { - } - } - Statement st = null; - try { - st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("parrot", (rs.getString(1))); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (SQLException ee) { - } - } - - try { - st = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("bird", (rs.getString(1))); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, -1); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - try { - conn.createStatement(Integer.MIN_VALUE, ResultSet.CONCUR_READ_ONLY); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - */ - } - - /** - * @test java.sql.Connection#prepareCall(String sql, int resultSetType, int - * resultSetConcurrency, int resultSetHoldability) - * - * TODO prepareCall is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "prepareCall", - args = {java.lang.String.class, int.class, int.class, int.class} - ) - public void testPrepareCall_String_int_int_int() { - CallableStatement cstmt = null; - ResultSet rs = null; - - try { - String query = "call welcomeAnimal(?, ?, ?)"; - cstmt = conn.prepareCall(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.HOLD_CURSORS_OVER_COMMIT); - } catch (SQLException e) { - //ok - } - /* - try { - String query = "call welcomeAnimal(?, ?, ?)"; - cstmt = conn.prepareCall(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.HOLD_CURSORS_OVER_COMMIT); - cstmt.setInt(1, 3); - cstmt.setString(2, "Petya"); - cstmt.setString(3, "Cock"); - cstmt.execute("select id, name from zoo"); - rs = cstmt.getResultSet(); - try { - rs.close(); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - fail("Unexpected exception was thrown during closing ResultSet"); - } - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - cstmt.close(); - } catch (Exception ee) { - } - } - - Statement st = null; - - try { - st = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.CLOSE_CURSORS_AT_COMMIT); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.close(); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } - - try { - conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, -100); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - */ - - } - - /** - * @test java.sql.Connection#prepareStatement(String sql) - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "", - method = "prepareStatement", - args = {java.lang.String.class} - ) - public void testPrepareStatement() { - PreparedStatement prst = null; - Statement st = null; - ResultSet rs = null; - ResultSet rs1 = null; - try { - String update = "update zoo set family = ? where name = ?;"; - prst = conn.prepareStatement(update); - prst.setString(1, "cat"); - prst.setString(2, "Yasha"); - st = conn.createStatement(); - st.execute("select * from zoo where family = 'cat'"); - rs = st.getResultSet(); - assertEquals(0, getCount(rs)); - prst.executeUpdate(); - st.execute("select * from zoo where family = 'cat'"); - rs1 = st.getResultSet(); - assertEquals(1, getCount(rs1)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - rs1.close(); - prst.close(); - st.close(); - } catch (SQLException ee) { - } - } - - try { - prst = conn.prepareStatement(""); - prst.execute(); - fail("SQLException is not thrown"); - } catch (SQLException e) { - //ok - } - - try { - conn.prepareStatement(null); - fail("SQLException is not thrown"); - } catch (Exception e) { - //ok - } - - - } - - - /** - * @test { @link java.sql.Connection#prepareStatement(String sql, int - * autoGeneratedKeys) } - */ -// TODO Crashes VM. Fix later. - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "Statment.Return_generated_keys/getGeneratedKeys is not supported", - method = "prepareStatement", - args = {java.lang.String.class, int.class} - ) - @KnownFailure("not supported") - public void testPrepareStatement_String_int() { - PreparedStatement prst = null; - PreparedStatement prst1 = null; - Statement st = null; - ResultSet rs = null; - ResultSet rs1 = null; - ResultSet rs4 = null; - ResultSet rs5 = null; - - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - prst = conn.prepareStatement(insert, - Statement.RETURN_GENERATED_KEYS); - fail("Fail: prepareStatement does not fail"); - } catch (SQLException e) { - //ok not supported - } - - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - - prst = conn.prepareStatement(insert, - Statement.NO_GENERATED_KEYS); - prst.setInt(1, 8); - prst.setString(2, "Tuzik"); - prst.setString(3, "dog"); - st = conn.createStatement(); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(2, getCount(rs)); - prst.execute(); - st.execute("select * from zoo where family = 'dog'"); - rs1 = st.getResultSet(); - assertEquals(1, getCount(rs1)); -// TODO getGeneratedKeys is not supported - rs4 = prst.getGeneratedKeys(); - assertEquals(0, getCount(rs4)); - - - - prst1 = conn.prepareStatement(insert, Statement.RETURN_GENERATED_KEYS); - prst1.setInt(1, 5); - prst1.setString(2, "Layka"); - prst1.setString(3, "dog"); - - prst1.execute(); - - - - rs5 = prst1.getGeneratedKeys(); - assertEquals(0, getCount(rs5)); - - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - rs1.close(); - prst.close(); - st.close(); - } catch (Exception ee) { - } - } - - - } - - /** - * @test java.sql.Connection#commit() - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "", - method = "commit", - args = {} - ) - public void testCommit() { - Statement st = null; - Statement st1 = null; - Statement st2 = null; - Statement st3 = null; - Statement st4 = null; - ResultSet rs1 = null; - ResultSet rs2 = null; - ResultSet rs3 = null; - ResultSet rs4 = null; - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - try { - conn.commit(); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - try { - st3 = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.HOLD_CURSORS_OVER_COMMIT); - st3.execute("select * from zoo"); - rs3 = st3.getResultSet(); - conn.commit(); - assertEquals(4, getCount(rs3)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - if (rs3 != null) rs3.close(); - if (st3 != null) st3.close(); - } catch (SQLException ee) { - } - } - } catch (SQLException sqle) { - fail("SQLException was thrown: " + sqle.toString()); - } finally { - try { - rs1.close(); - st.close(); - st1.close(); - } catch (Exception ee) { - } - } - - - } - - /** - * @throws SQLException - * @test java.sql.Connection#rollback() - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "", - method = "rollback", - args = {} - ) - public void testRollback() throws SQLException { - Statement st = null; - Statement st1 = null; - ResultSet rs1 = null; - ResultSet rs2 = null; - ResultSet rs3 = null; - - try { - conn.setAutoCommit(false); - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - conn.rollback(); - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals("Rollback was ineffective",2, getCount(rs1)); - - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - conn.setAutoCommit(true); - try { - st.close(); - st1.close(); - rs1.close(); - } catch (SQLException ee) { - } - } - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - if (!conn.getAutoCommit()) { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - Statement st2 = null; - Statement st3 = null; - try { - conn.commit(); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - // rollback after commit ineffective - conn.rollback(); - st3 = conn.createStatement(); - st3.execute("select * from zoo"); - rs3 = st3.getResultSet(); - assertEquals(4, getCount(rs3)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - conn.setAutoCommit(true); - try { - rs2.close(); - rs3.close(); - st2.close(); - st3.close(); - } catch (SQLException ee) { - } - } - } else { - fail("Error in test setup: cannot turn autocommit off."); - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - try { - st.close(); - st1.close(); - rs1.close(); - } catch (SQLException ee) { - } - } - - conn.close(); - try { - conn.rollback(); - fail("SQLException expected"); - } catch (SQLException e) { - // ok - } - } - - /** - * @test java.sql.Connection#setSavepoint() - * - * TODO setSavepoint is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "setSavepoint", - args = {} - ) - public void testSetSavepoint() { - - try { - conn.setAutoCommit(false); - - try { - Savepoint sp = conn.setSavepoint(); - } catch (SQLException e) { - // ok not supported - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - - - //Complete test but: not supported exception is thrown - /* - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - if (!conn.getAutoCommit()) { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - Statement st2 = null; - ResultSet rs2 = null; - try { - Savepoint sp = conn.setSavepoint(); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (Exception ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint(); - assertNotNull(sp1); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint(); - assertNotNull(sp2); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(sp1); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint(); - assertNotNull(sp1); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint(); - assertNotNull(sp2); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - } else { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - try { - Savepoint sp = conn.setSavepoint(); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - try { - rs1.close(); - st.close(); - st1.close(); - } catch (SQLException ee) { - } - } - */ - } - - /** - * @test java.sql.Connection#setSavepoint(String name) - * - * TODO setSavepoint is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "setSavepoint", - args = {java.lang.String.class} - ) - public void testSetSavepoint_String() { - - String testSavepoint = "testSavepoint"; - - try { - conn.setAutoCommit(false); - - try { - Savepoint sp = conn.setSavepoint(testSavepoint); - } catch (SQLException e) { - // ok not supported - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - - /* - Statement st = null; - Statement st1 = null; - ResultSet rs1 = null; - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - if (!conn.getAutoCommit()) { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - Statement st2 = null; - ResultSet rs2 = null; - try { - Savepoint sp = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (Exception ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint("two"); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(sp1); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint("three"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint("four"); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - } else { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - try { - Savepoint sp = conn.setSavepoint("five"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - try { - rs1.close(); - st.close(); - st1.close(); - } catch (SQLException ee) { - } - } - */ - } - - /** - * @test java.sql.Connection#rollback(Savepoint savepoint) - * - * TODO Savepoint is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "rollback", - args = {java.sql.Savepoint.class} - ) - public void testRollback_Savepoint() { - Savepoint sp = new DummySavePoint(); - try { - conn.setAutoCommit(false); - - try { - conn.rollback(sp); - } catch (SQLException e) { - //ok - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - /* - Statement st = null; - Statement st1 = null; - ResultSet rs1 = null; - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - if (!conn.getAutoCommit()) { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - Statement st2 = null; - ResultSet rs2 = null; - try { - Savepoint sp = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (Exception ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint("two"); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(sp1); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint("three"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint("four"); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.rollback(); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - } else { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - try { - Savepoint sp = conn.setSavepoint("five"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - try { - rs1.close(); - st.close(); - st1.close(); - } catch (SQLException ee) { - } - } - */ - } - - /** - * @test java.sql.Connection#releaseSavepoint(Savepoint savepoint) - * - * TODO Savepoint is not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "releaseSavepoint", - args = {java.sql.Savepoint.class} - ) - public void testReleaseSavepoint_Savepoint() { - Savepoint sp = new DummySavePoint(); - try { - conn.setAutoCommit(false); - - try { - conn.releaseSavepoint(sp); - } catch (SQLException e) { - //ok - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } - /* - - Statement st = null; - Statement st1 = null; - ResultSet rs1 = null; - try { - conn.setAutoCommit(false); - - st = conn.createStatement(); - st - .execute("insert into zoo (id, name, family) values (3, 'Vorobey', 'sparrow');"); - st - .execute("insert into zoo (id, name, family) values (4, 'Orel', 'eagle');"); - - if (!conn.getAutoCommit()) { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - Statement st2 = null; - ResultSet rs2 = null; - try { - Savepoint sp = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.rollback(sp); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.releaseSavepoint(sp); - try { - conn.rollback(sp); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - conn.rollback(); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (Exception ee) { - } - } - - try { - Savepoint sp1 = conn.setSavepoint("one"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - Savepoint sp2 = conn.setSavepoint("two"); - st - .execute("insert into zoo (id, name, family) values (6, 'grach', 'rook');"); - conn.releaseSavepoint(sp1); - try { - conn.rollback(sp1); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - conn.commit(); - conn.rollback(sp2); - st2 = conn.createStatement(); - st2.execute("select * from zoo"); - rs2 = st2.getResultSet(); - assertEquals(4, getCount(rs2)); - } catch (SQLException e) { - fail("SQLException is thrown: " + e.toString()); - } finally { - try { - rs2.close(); - st2.close(); - } catch (SQLException ee) { - } - } - - } else { - st1 = conn.createStatement(); - st1.execute("select * from zoo"); - rs1 = st1.getResultSet(); - assertEquals(4, getCount(rs1)); - try { - Savepoint sp = conn.setSavepoint("five"); - st - .execute("insert into zoo (id, name, family) values (5, 'chayka', 'gull');"); - conn.releaseSavepoint(sp); - fail("SQLException is not thrown"); - } catch (SQLException sqle) { - // expected - } - } - } catch (SQLException sqle) { - fail("SQLException is thrown: " + sqle.toString()); - } finally { - try { - rs1.close(); - st.close(); - st1.close(); - } catch (SQLException ee) { - } - } - */ - } - - /** - * @test java.sql.Connection#prepareStatement(String sql, int[] - * columnIndexes) - * - * TODO prepareStatement(String sql, int[] columnIndexes) is not - * supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "prepareStatement", - args = {java.lang.String.class, int[].class} - ) - public void testPrepareStatement_String_intArray() { - PreparedStatement prst = null; - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - prst = conn.prepareStatement(insert, new int[] { 0, 1, 2 }); - } catch (SQLException e) { - //ok not supported - } finally { - try { - prst.close(); - } catch (Exception ee) { - } - } - /* - - Statement st = null; - PreparedStatement prst1 = null; - PreparedStatement prst = null; - ResultSet rs = null; - ResultSet rs1 = null; - ResultSet rs4 = null; - ResultSet rs5 = null; - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - prst = conn.prepareStatement(insert, new int[] { 0, 1, 2 }); - prst.setInt(1, 8); - prst.setString(2, "Tuzik"); - prst.setString(3, "dog"); - - st = conn.createStatement(); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(2, getCount(rs)); - prst.execute(); - st.execute("select * from zoo where family = 'dog'"); - rs1 = st.getResultSet(); - assertEquals(1, getCount(rs1)); - - rs4 = prst.getGeneratedKeys(); - assertEquals(0, getCount(rs4)); - - prst1 = conn.prepareStatement(insert, new int[] { 0, 1, 2, 10 }); - prst1.setInt(1, 5); - prst1.setString(2, "Layka"); - prst1.setString(3, "dog"); - - prst1.execute(); - - rs5 = prst1.getGeneratedKeys(); - assertEquals(0, getCount(rs5)); - - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - rs1.close(); - rs4.close(); - rs5.close(); - st.close(); - prst1.close(); - prst.close(); - } catch (Exception ee) { - } - } - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - conn.prepareStatement(insert, new int[] {}); - } catch (SQLException e) { - fail("SQLException is thrown"); - } - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - conn.prepareStatement(insert, (int[]) null); - } catch (SQLException e) { - fail("SQLException is thrown"); - } - */ - } - - /** - * @test java.sql.Connection#prepareStatement(String sql, int resultSetType, - * int resultSetConcurrency) - */ - @TestTargetNew( - level = TestLevel.PARTIAL_COMPLETE, - notes = "not fully supported", - method = "prepareStatement", - args = {java.lang.String.class, int.class, int.class} - ) - public void testPrepareStatement_String_int_int() { - String query = "insert into zoo (id, name, family) values (?, ?, ?);"; - PreparedStatement st = null; - ResultSet rs = null; - try { - - st = conn.prepareStatement(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.deleteRow(); - fail("Can delete row for READ_ONLY ResultSet"); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - if (rs != null) rs.close(); - if (st != null) st.close(); - } catch (SQLException ee) { - } - } - - try { - st = conn.prepareStatement(query, ResultSet.TYPE_SCROLL_SENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("bird", (rs.getString(1))); - } catch (SQLException sqle) { - // expected - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - st.close(); - } catch (SQLException ee) { - } - } - - try { - conn.prepareStatement(query, ResultSet.TYPE_SCROLL_SENSITIVE, -1); - } catch (SQLException sqle) { - // expected - } - - try { - conn.prepareStatement(query, Integer.MIN_VALUE, - ResultSet.CONCUR_READ_ONLY); - } catch (SQLException sqle) { - // expected - } - } - - @TestTargetNew( - level = TestLevel.PARTIAL_COMPLETE, - notes = "not supported options: ResultSet.TYPE_SCROLL_INSENSITIVE," + - "ResultSet.CONCUR_UPDATABLE", - method = "prepareStatement", - args = {java.lang.String.class, int.class, int.class} - ) - @KnownFailure("not supported") - public void testPrepareStatementNotSupported() { - String query = "insert into zoo (id, name, family) values (?, ?, ?);"; - PreparedStatement st = null; - ResultSet rs = null; - try { - st = conn.prepareStatement(query, - ResultSet.TYPE_SCROLL_INSENSITIVE, - ResultSet.CONCUR_UPDATABLE); - st.execute("select name, family from zoo"); - rs = st.getResultSet(); - try { - rs.insertRow(); - rs.updateObject("family", "bird"); - rs.next(); - rs.previous(); - assertEquals("parrot", (rs.getString(1))); - } catch (SQLException sqle) { - fail("Got Exception "+sqle.getMessage()); - } - - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - if (rs != null) rs.close(); - if (st != null) st.close(); - } catch (SQLException ee) { - } - } - - } - - - - /** - * @test java.sql.Connection#prepareStatement(String sql, int resultSetType, - * int resultSetConcurrency, int resultSetHoldability) - */ - // TODO Crashes VM. Fix later. - @TestTargetNew( - level = TestLevel.SUFFICIENT, - notes = "Not fully implemented: ResultSet.CLOSE_CURSORS_AT_COMMIT not supported", - method = "prepareStatement", - args = {java.lang.String.class, int.class, int.class, int.class} - ) - public void testPrepareStatement_String_int_int_int() { - String query = "insert into zoo (id, name, family) values (?, ?, ?);"; - PreparedStatement st = null; - ResultSet rs = null; - try { - st = conn.prepareStatement(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.HOLD_CURSORS_OVER_COMMIT); - st.setInt(1, 3); - st.setString(2, "Petya"); - st.setString(3, "Cock"); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.close(); - } catch (SQLException sqle) { - fail("Unexpected exception was thrown during closing ResultSet"); - } - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - if (rs != null) rs.close(); - if (st != null) st.close(); - } catch (SQLException ee) { - } - } - /* - //TODO ResultSet.CLOSE_CURSORS_AT_COMMIT is not supported - try { - st = conn.prepareStatement(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, - ResultSet.CLOSE_CURSORS_AT_COMMIT); - st.execute("select id, name from zoo"); - rs = st.getResultSet(); - try { - rs.close(); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - } catch (SQLException e) { - fail("SQLException was thrown: " + e.getMessage()); - } finally { - try { - st.close(); - rs.close(); - } catch (SQLException ee) { - } - } - */ - - try { - conn.prepareStatement(query, ResultSet.TYPE_FORWARD_ONLY, - ResultSet.CONCUR_READ_ONLY, -100); - fail("SQLException was not thrown"); - } catch (SQLException sqle) { - // expected - } - - } - - /** - * @test java.sql.Connection#prepareStatement(String sql, String[] - * columnNames) - * - * TODO prepareStatement(String sql, String[] columnNames) method is - * not supported - */ - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "prepareStatement", - args = {java.lang.String.class, java.lang.String[].class} - ) - public void testPrepareStatement_String_StringArray() { - PreparedStatement prst = null; - PreparedStatement prst1 = null; - ResultSet rs = null; - ResultSet rs1 = null; - ResultSet rs4 = null; - ResultSet rs5 = null; - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - conn.prepareStatement(insert, new String[] { "id", "name", - "family" }); - } catch (SQLException e) { - //ok not supported - } - - /* - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - conn.prepareStatement(insert, new String[] {}); - } catch (SQLException e) { - fail("SQLException is thrown"); - } - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - conn.prepareStatement(insert, (String[]) null); - } catch (SQLException e) { - fail("SQLException is thrown"); - } - - try { - String insert = "insert into zoo (id, name, family) values (?, ?, ?);"; - prst = conn.prepareStatement(insert, new String[] { "id", "name", - "family" }); - prst.setInt(1, 8); - prst.setString(2, "Tuzik"); - prst.setString(3, "dog"); - - Statement st = conn.createStatement(); - st.execute("select * from zoo"); - rs = st.getResultSet(); - assertEquals(2, getCount(rs)); - prst.execute(); - st.execute("select * from zoo where family = 'dog'"); - rs1 = st.getResultSet(); - assertEquals(1, getCount(rs1)); - - rs4 = prst.getGeneratedKeys(); - assertEquals(0, getCount(rs4)); - - prst1 = conn.prepareStatement(insert, new String[] { "id", "name", "" }); - prst1.setInt(1, 5); - prst1.setString(2, "Layka"); - prst1.setString(3, "dog"); - - prst1.execute(); - - rs5 = prst1.getGeneratedKeys(); - assertEquals(0, getCount(rs5)); - - } catch (SQLException e) { - fail("SQLException is thrown: " + e.getMessage()); - } finally { - try { - rs.close(); - rs1.close(); - rs4.close(); - rs5.close(); - prst.close(); - prst1.close(); - } catch (Exception ee) { - } - } - */ - - - } - - - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported: it should release all resources but it doesn't", - method = "close", - args = {} - ) - public void testClose() { - try { - - - - if (! conn.isClosed()) { - conn.close(); - } - assertTrue(conn.isClosed()); - - try { - conn.prepareCall("select * from zoo"); - fail("Should not be able to prepare query closed connection"); - } catch (SQLException e) { - //ok - } - } catch (SQLException e) { - fail("Error in implementation"); - e.printStackTrace(); - } - - } - - @TestTargetNew( - level = TestLevel.COMPLETE, - notes = "not supported", - method = "isClosed", - args = {} - ) - public void testIsClosed() throws Exception { - - assertFalse(conn.isClosed()); - conn.close(); - assertTrue(conn.isClosed()); - - conn = DriverManager.getConnection("jdbc:sqlite:/" + dbFile.getPath()); - assertFalse(conn.isClosed()); - Statement st = conn.createStatement(); - st.execute("select * from zoo"); - } - - - private static class DummySavePoint implements Savepoint{ - - public int getSavepointId() { - // TODO Auto-generated method stub - return 0; - } - - public String getSavepointName() { - // TODO Auto-generated method stub - return "NoName"; - } - - } -} |