aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDave Cramer <davec@fastcrypt.com>2003-12-18 04:08:30 +0000
committerDave Cramer <davec@fastcrypt.com>2003-12-18 04:08:30 +0000
commitb9deede24139f64cb2dc609ca46ae9cfe0b062a9 (patch)
tree0058bf615da085cee3bcfc66796fe0d5f4143239 /src
parente9aec81792441eafe2ee0987236f52ae39e726a5 (diff)
downloadpostgresql-b9deede24139f64cb2dc609ca46ae9cfe0b062a9.tar.gz
postgresql-b9deede24139f64cb2dc609ca46ae9cfe0b062a9.zip
fixed up OID74 test to conform with other tests, by Kris Jurka
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/jdbc/org/postgresql/test/jdbc2/OID74Test.java179
1 files changed, 80 insertions, 99 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/test/jdbc2/OID74Test.java b/src/interfaces/jdbc/org/postgresql/test/jdbc2/OID74Test.java
index 5a5781ac691..eb83cd7a695 100644
--- a/src/interfaces/jdbc/org/postgresql/test/jdbc2/OID74Test.java
+++ b/src/interfaces/jdbc/org/postgresql/test/jdbc2/OID74Test.java
@@ -1,99 +1,80 @@
-package org.postgresql.test.jdbc2;
-
-import org.postgresql.test.TestUtil;
-import junit.framework.TestCase;
-import java.io.*;
-import java.sql.*;
-
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.sql.*;
-
-/**
- * User: alexei
- * Date: 17-Dec-2003
- * Time: 11:01:44
- * @version $Id: OID74Test.java,v 1.2 2003/12/17 15:45:05 davec Exp $
- */
-public class OID74Test extends TestCase
-{
- private Connection con;
-
-
- public OID74Test( String name )
- {
- super(name);
- }
- public void setUp() throws Exception
- {
- }
- public void tearDown() throws Exception
- {
- }
- public void testBinaryStream()
- {
- //set up conection here
- Connection c = null;
-
- Statement st = null;
- try
- {
- c = DriverManager.getConnection("jdbc:postgresql://localhost/test?compatible=7.1&user=test");
- c.setAutoCommit(false);
- st = c.createStatement();
- st.execute("CREATE temp TABLE temp (col oid)");
- }
- catch (SQLException e)
- {
- //another issue: when connecting to 7.3 database and this exception occurs because the table already exists,
- //st.setBinaryStream throws internal error in LargeObjectManager initialisation code
- fail("table creating error, probably already exists, code=" + e.getErrorCode());
- }
- finally
- {
- try{ if (st != null) st.close(); }catch(SQLException ex){};
- }
-
- PreparedStatement pstmt = null;
- try
- {
-
- pstmt = c.prepareStatement("INSERT INTO temp VALUES (?)");
- //in case of 7.4 server, should block here
- pstmt.setBinaryStream(1, new ByteArrayInputStream(new byte[]{1, 2, 3, 4, 5}), 5);
- assertTrue( (pstmt.executeUpdate() == 1) );
- pstmt.close();
-
- pstmt = c.prepareStatement("SELECT col FROM temp LIMIT 1");
- ResultSet rs = pstmt.executeQuery();
-
- assertTrue("No results from query", rs.next() );
-
- //in case of 7.4 server, should block here
- InputStream in = rs.getBinaryStream(1);
- int data;
- while ((data = in.read()) != -1)
- System.out.println(data);
- rs.close();
- st.close();
- c.createStatement().executeUpdate("DELETE FROM temp");
- c.commit();
- }
- catch ( IOException ioex )
- {
- fail( ioex.getMessage() );
- }
- catch (SQLException ex)
- {
- fail( ex.getMessage() );
- }
- finally
- {
- try
- {
- if ( c!=null) c.close();
- }
- catch( SQLException e1){}
- }
- }
-}
+package org.postgresql.test.jdbc2;
+
+import org.postgresql.test.TestUtil;
+import junit.framework.TestCase;
+import java.io.*;
+import java.sql.*;
+
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+import java.util.Properties;
+import java.sql.*;
+
+/**
+ * User: alexei
+ * Date: 17-Dec-2003
+ * Time: 11:01:44
+ * @version $Id: OID74Test.java,v 1.3 2003/12/18 04:08:30 davec Exp $
+ */
+public class OID74Test extends TestCase
+{
+
+ public OID74Test( String name )
+ {
+ super(name);
+ }
+ public void setUp() throws Exception
+ {
+ }
+ public void tearDown() throws Exception
+ {
+ }
+ public void testBinaryStream() throws SQLException
+ {
+ //set up conection here
+ Properties props = new Properties();
+ props.setProperty("compatible","7.1");
+ Connection c = TestUtil.openDB(props);
+ c.setAutoCommit(false);
+
+ TestUtil.createTable(c,"temp","col oid");
+
+ Statement st = null;
+
+ PreparedStatement pstmt = null;
+ try
+ {
+
+ pstmt = c.prepareStatement("INSERT INTO temp VALUES (?)");
+ pstmt.setBinaryStream(1, new ByteArrayInputStream(new byte[]{1, 2, 3, 4, 5}), 5);
+ assertTrue( (pstmt.executeUpdate() == 1) );
+ pstmt.close();
+
+ pstmt = c.prepareStatement("SELECT col FROM temp LIMIT 1");
+ ResultSet rs = pstmt.executeQuery();
+
+ assertTrue("No results from query", rs.next() );
+
+ InputStream in = rs.getBinaryStream(1);
+ int data;
+ int i = 1;
+ while ((data = in.read()) != -1)
+ assertEquals(data,i++);
+ rs.close();
+ pstmt.close();
+ c.createStatement().executeUpdate("DELETE FROM temp");
+ c.commit();
+ }
+ catch ( IOException ioex )
+ {
+ fail( ioex.getMessage() );
+ }
+ catch (SQLException ex)
+ {
+ fail( ex.getMessage() );
+ }
+
+ TestUtil.dropTable(c,"temp");
+ TestUtil.closeDB(c);
+ }
+}