diff options
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql/test')
6 files changed, 45 insertions, 26 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/test/TestUtil.java b/src/interfaces/jdbc/org/postgresql/test/TestUtil.java index a9f9dfdf3f..fc8dc70deb 100644 --- a/src/interfaces/jdbc/org/postgresql/test/TestUtil.java +++ b/src/interfaces/jdbc/org/postgresql/test/TestUtil.java @@ -109,11 +109,26 @@ public class TestUtil Statement stmt = con.createStatement(); try { - stmt.executeUpdate("DROP TABLE " + table); + String sql = "DROP TABLE " + table; + if (con instanceof org.postgresql.jdbc1.AbstractJdbc1Connection && ((org.postgresql.jdbc1.AbstractJdbc1Connection)con).haveMinimumServerVersion("7.3")) { + sql += " CASCADE "; + } + stmt.executeUpdate(sql); } catch (SQLException ex) { - // ignore + // Since every create table issues a drop table + // it's easy to get a table doesn't exist error. + // we want to ignore these, but if we're in a + // transaction we need to restart. + // If the test case wants to catch this error + // itself it should issue the drop SQL directly. + if (ex.getMessage().indexOf("does not exist") != -1) { + if (!con.getAutoCommit()) { + con.rollback(); + } + + } } } catch (SQLException ex) diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java index 87341925c5..0d1a962049 100644 --- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java +++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java @@ -9,7 +9,7 @@ import java.sql.*; * * PS: Do you know how difficult it is to type on a train? ;-) * - * $Id: DatabaseMetaDataTest.java,v 1.13 2002/09/06 21:23:06 momjian Exp $ + * $Id: DatabaseMetaDataTest.java,v 1.14 2002/09/11 05:38:45 barry Exp $ */ public class DatabaseMetaDataTest extends TestCase @@ -264,7 +264,11 @@ public class DatabaseMetaDataTest extends TestCase assertTrue( fkColumnName.equals( "m" ) || fkColumnName.equals( "n" ) ) ; String fkName = rs.getString( "FK_NAME" ); - assertTrue( fkName.equals( "<unnamed>") ); + if (((org.postgresql.jdbc1.AbstractJdbc1Connection)con1).haveMinimumServerVersion("7.3")) { + assertTrue(fkName.startsWith("$1")); + } else { + assertTrue( fkName.startsWith( "<unnamed>") ); + } String pkName = rs.getString( "PK_NAME" ); assertTrue( pkName.equals("vv_pkey") ); @@ -317,7 +321,7 @@ public class DatabaseMetaDataTest extends TestCase assertTrue( fkColumnName.equals( "people_id" ) || fkColumnName.equals( "policy_id" ) ) ; String fkName = rs.getString( "FK_NAME" ); - assertTrue( fkName.equals( "people") || fkName.equals( "policy" ) ); + assertTrue( fkName.startsWith( "people") || fkName.startsWith( "policy" ) ); String pkName = rs.getString( "PK_NAME" ); assertTrue( pkName.equals( "people_pkey") || pkName.equals( "policy_pkey" ) ); @@ -337,7 +341,7 @@ public class DatabaseMetaDataTest extends TestCase assertTrue( rs.getString( "FKTABLE_NAME" ).equals( "users" ) ); assertTrue( rs.getString( "FKCOLUMN_NAME" ).equals( "people_id" ) ); - assertTrue( rs.getString( "FK_NAME" ).equals( "people" ) ); + assertTrue( rs.getString( "FK_NAME" ).startsWith( "people" ) ); TestUtil.dropTable( con1, "users" ); diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java index 3e5519e317..fcd6321803 100644 --- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java +++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java @@ -124,6 +124,7 @@ public class UpdateableResultTest extends TestCase st.close(); TestUtil.dropTable( con, "updateable" ); + TestUtil.dropTable( con, "second" ); TestUtil.closeDB( con ); } catch (Exception ex) diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java index dbb73d3e72..7d041496c8 100644 --- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java +++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/BaseDataSourceTest.java @@ -1,7 +1,7 @@ package org.postgresql.test.jdbc2.optional; import junit.framework.TestCase; -import org.postgresql.test.JDBC2Tests; +import org.postgresql.test.TestUtil; import org.postgresql.jdbc2.optional.SimpleDataSource; import org.postgresql.jdbc2.optional.BaseDataSource; @@ -15,7 +15,7 @@ import java.sql.*; * tests. * * @author Aaron Mulder (ammulder@chariotsolutions.com) - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ */ public abstract class BaseDataSourceTest extends TestCase { @@ -36,12 +36,12 @@ public abstract class BaseDataSourceTest extends TestCase */ protected void setUp() throws Exception { - con = JDBC2Tests.openDB(); - JDBC2Tests.createTable(con, "poolingtest", "id int4 not null primary key, name varchar(50)"); + con = TestUtil.openDB(); + TestUtil.createTable(con, "poolingtest", "id int4 not null primary key, name varchar(50)"); Statement stmt = con.createStatement(); stmt.executeUpdate("INSERT INTO poolingtest VALUES (1, 'Test Row 1')"); stmt.executeUpdate("INSERT INTO poolingtest VALUES (2, 'Test Row 2')"); - JDBC2Tests.closeDB(con); + TestUtil.closeDB(con); } /** @@ -50,9 +50,9 @@ public abstract class BaseDataSourceTest extends TestCase */ protected void tearDown() throws Exception { - con = JDBC2Tests.openDB(); - JDBC2Tests.dropTable(con, "poolingtest"); - JDBC2Tests.closeDB(con); + con = TestUtil.openDB(); + TestUtil.dropTable(con, "poolingtest"); + TestUtil.closeDB(con); } /** @@ -142,8 +142,7 @@ public abstract class BaseDataSourceTest extends TestCase try { con = getDataSourceConnection(); - JDBC2Tests.dropTable(con, "poolingtest"); - JDBC2Tests.createTable(con, "poolingtest", "id int4 not null primary key, name varchar(50)"); + TestUtil.createTable(con, "poolingtest", "id int4 not null primary key, name varchar(50)"); con.close(); } catch (SQLException e) diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java index 2e405f2a54..90a3b564a5 100644 --- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java +++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/ConnectionPoolTest.java @@ -1,7 +1,7 @@ package org.postgresql.test.jdbc2.optional; import org.postgresql.jdbc2.optional.ConnectionPool; -import org.postgresql.test.JDBC2Tests; +import org.postgresql.test.TestUtil; import javax.sql.*; import java.sql.*; @@ -11,7 +11,7 @@ import java.sql.*; * interface to the PooledConnection is through the CPDS. * * @author Aaron Mulder (ammulder@chariotsolutions.com) - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ */ public class ConnectionPoolTest extends BaseDataSourceTest { @@ -31,7 +31,7 @@ public class ConnectionPoolTest extends BaseDataSourceTest if (bds == null) { bds = new ConnectionPool(); - String db = JDBC2Tests.getURL(); + String db = TestUtil.getURL(); if (db.indexOf('/') > -1) { db = db.substring(db.lastIndexOf('/') + 1); @@ -41,8 +41,8 @@ public class ConnectionPoolTest extends BaseDataSourceTest db = db.substring(db.lastIndexOf(':') + 1); } bds.setDatabaseName(db); - bds.setUser(JDBC2Tests.getUser()); - bds.setPassword(JDBC2Tests.getPassword()); + bds.setUser(TestUtil.getUser()); + bds.setPassword(TestUtil.getPassword()); } } diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/SimpleDataSourceTest.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/SimpleDataSourceTest.java index 3eb42733a2..b5c3e100ec 100644 --- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/SimpleDataSourceTest.java +++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/optional/SimpleDataSourceTest.java @@ -1,6 +1,6 @@ package org.postgresql.test.jdbc2.optional; -import org.postgresql.test.JDBC2Tests; +import org.postgresql.test.TestUtil; import org.postgresql.jdbc2.optional.SimpleDataSource; /** @@ -8,7 +8,7 @@ import org.postgresql.jdbc2.optional.SimpleDataSource; * configuration logic. * * @author Aaron Mulder (ammulder@chariotsolutions.com) - * @version $Revision: 1.2 $ + * @version $Revision: 1.3 $ */ public class SimpleDataSourceTest extends BaseDataSourceTest { @@ -28,7 +28,7 @@ public class SimpleDataSourceTest extends BaseDataSourceTest if (bds == null) { bds = new SimpleDataSource(); - String db = JDBC2Tests.getURL(); + String db = TestUtil.getURL(); if (db.indexOf('/') > -1) { db = db.substring(db.lastIndexOf('/') + 1); @@ -38,8 +38,8 @@ public class SimpleDataSourceTest extends BaseDataSourceTest db = db.substring(db.lastIndexOf(':') + 1); } bds.setDatabaseName(db); - bds.setUser(JDBC2Tests.getUser()); - bds.setPassword(JDBC2Tests.getPassword()); + bds.setUser(TestUtil.getUser()); + bds.setPassword(TestUtil.getPassword()); } } } |
