You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ka...@apache.org on 2006/07/20 08:25:01 UTC
svn commit: r423800 -
/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/
Author: kahatlen
Date: Wed Jul 19 23:25:01 2006
New Revision: 423800
URL: http://svn.apache.org/viewvc?rev=423800&view=rev
Log:
DERBY-1536: Extend tests for Wrapper interface
Modified:
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/CallableStatementTest.java
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/DataSourceTest.java
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ParameterMetaDataWrapperTest.java
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/PreparedStatementTest.java
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ResultSetMetaDataTest.java
db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/StatementTest.java
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/CallableStatementTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/CallableStatementTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/CallableStatementTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/CallableStatementTest.java Wed Jul 19 23:25:01 2006
@@ -23,7 +23,6 @@
import junit.framework.*;
import org.apache.derbyTesting.functionTests.util.BaseJDBCTestCase;
-import org.apache.derbyTesting.functionTests.util.SQLStateConstants;
import java.io.IOException;
import java.io.Reader;
@@ -472,65 +471,53 @@
// We are fine, do nothing.
}
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<CallableStatement> wrap_class = CallableStatement.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(cStmt.isWrapperFor(wrap_class)) {
- try {
- CallableStatement stmt1 =
- (CallableStatement)cStmt.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
- }
+
+ /** Helper method for testIsWrapperFor*Statement test cases. */
+ private void testIsWrapperForXXXStatement(Class klass) throws SQLException {
+ assertTrue("The CallableStatement is not a wrapper for "
+ + klass.getName(),
+ cStmt.isWrapperFor(klass));
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- //test for the case when isWrapper returns false
- //using some class that will return false when
- //passed to isWrapperFor
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(cStmt.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- cStmt.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
- }
+
+ public void testIsWrapperForStatement() throws SQLException {
+ testIsWrapperForXXXStatement(Statement.class);
}
+ public void testIsWrapperForPreparedStatement() throws SQLException {
+ testIsWrapperForXXXStatement(PreparedStatement.class);
+ }
+
+ public void testIsWrapperForCallableStatement() throws SQLException {
+ testIsWrapperForXXXStatement(CallableStatement.class);
+ }
+
+ public void testIsNotWrapperForResultSet() throws SQLException {
+ assertFalse(cStmt.isWrapperFor(ResultSet.class));
+ }
+
+ public void testUnwrapStatement() throws SQLException {
+ Statement stmt = cStmt.unwrap(Statement.class);
+ assertSame("Unwrap returned wrong object.", cStmt, stmt);
+ }
+
+ public void testUnwrapPreparedStatement() throws SQLException {
+ PreparedStatement ps = cStmt.unwrap(PreparedStatement.class);
+ assertSame("Unwrap returned wrong object.", cStmt, ps);
+ }
+
+ public void testUnwrapCallableStatement() throws SQLException {
+ Statement cs = cStmt.unwrap(CallableStatement.class);
+ assertSame("Unwrap returned wrong object.", cStmt, cs);
+ }
+
+ public void testUnwrapResultSet() {
+ try {
+ ResultSet rs = cStmt.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
+ }
+ }
/**
*
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/DataSourceTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/DataSourceTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/DataSourceTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/DataSourceTest.java Wed Jul 19 23:25:01 2006
@@ -24,7 +24,6 @@
import org.apache.derbyTesting.functionTests.util.BaseJDBCTestCase;
import org.apache.derbyTesting.functionTests.util.TestDataSourceFactory;
-import org.apache.derbyTesting.functionTests.util.SQLStateConstants;
import java.sql.*;
import javax.sql.*;
@@ -64,62 +63,56 @@
public void tearDown() {
ds = null;
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<DataSource> wrap_class = DataSource.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(ds.isWrapperFor(wrap_class)) {
- try {
- DataSource stmt1 =
- (DataSource)ds.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
+
+ public void testIsWrapperForDataSource() throws SQLException {
+ assertTrue(ds.isWrapperFor(DataSource.class));
+ }
+
+ public void testIsNotWrapperForPoolDataSource() throws SQLException {
+ assertFalse(ds.isWrapperFor(ConnectionPoolDataSource.class));
+ }
+
+ public void testIsNotWrapperForXADataSource() throws SQLException {
+ assertFalse(ds.isWrapperFor(XADataSource.class));
+ }
+
+ public void testIsNotWrapperForResultSet() throws SQLException {
+ assertFalse(ds.isWrapperFor(ResultSet.class));
+ }
+
+ public void testUnwrapDataSource() throws SQLException {
+ DataSource ds2 = ds.unwrap(DataSource.class);
+ assertSame("Unwrap returned wrong object.", ds, ds2);
+ }
+
+ public void testUnwrapConnectionPoolDataSource() {
+ try {
+ ConnectionPoolDataSource cpds =
+ ds.unwrap(ConnectionPoolDataSource.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(ds.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- ds.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
+
+ public void testUnwrapXADataSource() {
+ try {
+ XADataSource xads = ds.unwrap(XADataSource.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
+
+ public void testUnwrapResultSet() {
+ try {
+ ResultSet rs = ds.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
+ }
+ }
+
/**
* Return suite with all tests of the class.
*/
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ParameterMetaDataWrapperTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ParameterMetaDataWrapperTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ParameterMetaDataWrapperTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ParameterMetaDataWrapperTest.java Wed Jul 19 23:25:01 2006
@@ -23,7 +23,6 @@
import javax.sql.*;
import junit.framework.*;
import org.apache.derbyTesting.functionTests.util.BaseJDBCTestCase;
-import org.apache.derbyTesting.functionTests.util.SQLStateConstants;
/**
* Tests of the <code>java.sql.ParameterMetaData</code> JDBC40 API
@@ -72,65 +71,29 @@
if(conn != null && !conn.isClosed())
conn.close();
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<ParameterMetaData> wrap_class = ParameterMetaData.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(pmd.isWrapperFor(wrap_class)) {
- try {
- ParameterMetaData pmd1 =
- (ParameterMetaData)pmd.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
- }
+
+ public void testIsWrapperForParameterMetaData() throws SQLException {
+ assertTrue(pmd.isWrapperFor(ParameterMetaData.class));
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- //test for the case when isWrapper returns false
- //using some class that will return false when
- //passed to isWrapperFor
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(pmd.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- pmd.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
+
+ public void testUnwrapParameterMetaData() throws SQLException {
+ ParameterMetaData pmd2 = pmd.unwrap(ParameterMetaData.class);
+ assertSame("Unwrap returned wrong object.", pmd, pmd2);
+ }
+
+ public void testIsNotWrapperForResultSet() throws SQLException {
+ assertFalse(pmd.isWrapperFor(ResultSet.class));
+ }
+
+ public void testUnwrapResultSet() {
+ try {
+ ResultSet rs = pmd.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
+
/**
* Return suite with all tests of the class.
*/
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/PreparedStatementTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/PreparedStatementTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/PreparedStatementTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/PreparedStatementTest.java Wed Jul 19 23:25:01 2006
@@ -23,7 +23,6 @@
import junit.framework.*;
import org.apache.derbyTesting.functionTests.util.BaseJDBCTestCase;
-import org.apache.derbyTesting.functionTests.util.SQLStateConstants;
import java.io.*;
import java.sql.*;
@@ -259,68 +258,48 @@
//--------------------------------------------------------------------------
//Now test the methods that are implemented in the PreparedStatement
//interface
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- * @throws SQLException upon any failure that occurs in the
- * call to the method.
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<PreparedStatement> wrap_class = PreparedStatement.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(ps.isWrapperFor(wrap_class)) {
- try {
- PreparedStatement stmt1 =
- (PreparedStatement)ps.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
+
+ public void testIsWrapperForStatement() throws SQLException {
+ assertTrue(ps.isWrapperFor(Statement.class));
+ }
+
+ public void testIsWrapperForPreparedStatement() throws SQLException {
+ assertTrue(ps.isWrapperFor(PreparedStatement.class));
+ }
+
+ public void testIsNotWrapperForCallableStatement() throws SQLException {
+ assertFalse(ps.isWrapperFor(CallableStatement.class));
+ }
+
+ public void testIsNotWrapperForResultSet() throws SQLException {
+ assertFalse(ps.isWrapperFor(ResultSet.class));
+ }
+
+ public void testUnwrapStatement() throws SQLException {
+ Statement stmt = ps.unwrap(Statement.class);
+ assertSame("Unwrap returned wrong object.", ps, stmt);
+ }
+
+ public void testUnwrapPreparedStatement() throws SQLException {
+ PreparedStatement ps2 = ps.unwrap(PreparedStatement.class);
+ assertSame("Unwrap returned wrong object.", ps, ps2);
+ }
+
+ public void testUnwrapCallableStatement() {
+ try {
+ CallableStatement cs = ps.unwrap(CallableStatement.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only
- *
- * @throws SQLException upon any failure that occurs in the
- * call to the method.
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- //test for the case when isWrapper returns false
- //using some class that will return false when
- //passed to isWrapperFor
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(ps.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- ps.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
+
+ public void testUnwrapResultSet() {
+ try {
+ ResultSet rs = ps.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ResultSetMetaDataTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ResultSetMetaDataTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ResultSetMetaDataTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/ResultSetMetaDataTest.java Wed Jul 19 23:25:01 2006
@@ -72,62 +72,29 @@
conn.close();
}
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<ResultSetMetaData> wrap_class = ResultSetMetaData.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(rsmd.isWrapperFor(wrap_class)) {
- try {
- ResultSetMetaData rsmd1 =
- (ResultSetMetaData)rsmd.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
- }
+
+ public void testIsWrapperForResultSetMetaData() throws SQLException {
+ assertTrue(rsmd.isWrapperFor(ResultSetMetaData.class));
+ }
+
+ public void testUnwrapResultSetMetaData() throws SQLException {
+ ResultSetMetaData rsmd2 = rsmd.unwrap(ResultSetMetaData.class);
+ assertSame("Unwrap returned wrong object.", rsmd, rsmd2);
+ }
+
+ public void testIsWrapperForResultSet() throws SQLException {
+ assertFalse(rsmd.isWrapperFor(ResultSet.class));
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(rsmd.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- rsmd.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
+
+ public void testUnwrapResultSet() {
+ try {
+ ResultSet rs = rsmd.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
+
/**
* Return suite with all tests of the class.
*/
Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/StatementTest.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/StatementTest.java?rev=423800&r1=423799&r2=423800&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/StatementTest.java (original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/StatementTest.java Wed Jul 19 23:25:01 2006
@@ -221,62 +221,52 @@
assertTrue("Statement should be closed, because " +
"the connection has been closed", stmt.isClosed());
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns true and we call unwrap
- * The test is right now being run in the embedded case only
- *
- */
- public void testisWrapperReturnsTrue() throws SQLException {
- Class<Statement> wrap_class = Statement.class;
-
- //The if should return true enabling us to call the unwrap method
- //without throwing an exception
- if(stmt.isWrapperFor(wrap_class)) {
- try {
- Statement stmt1 =
- (Statement)stmt.unwrap(wrap_class);
- }
- catch(SQLException sqle) {
- fail("Unwrap wrongly throws a SQLException");
- }
- } else {
- fail("isWrapperFor wrongly returns false");
+
+ public void testIsWrapperForStatement() throws SQLException {
+ assertTrue(stmt.isWrapperFor(Statement.class));
+ }
+
+ public void testIsNotWrapperForPreparedStatement() throws SQLException {
+ assertFalse(stmt.isWrapperFor(PreparedStatement.class));
+ }
+
+ public void testIsNotWrapperForCallableStatement() throws SQLException {
+ assertFalse(stmt.isWrapperFor(CallableStatement.class));
+ }
+
+ public void testIsNotWrapperForResultSet() throws SQLException {
+ assertFalse(stmt.isWrapperFor(ResultSet.class));
+ }
+
+ public void testUnwrapStatement() throws SQLException {
+ Statement stmt2 = stmt.unwrap(Statement.class);
+ assertSame("Unwrap returned wrong object.", stmt, stmt2);
+ }
+
+ public void testUnwrapPreparedStatement() {
+ try {
+ PreparedStatement ps = stmt.unwrap(PreparedStatement.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
+ }
+ }
+
+ public void testUnwrapCallableStatement() {
+ try {
+ CallableStatement cs = stmt.unwrap(CallableStatement.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}
-
- /**
- *
- * Tests the wrapper methods isWrapperFor and unwrap. Test
- * for the case when isWrapperFor returns false and we call unwrap
- * The test is right now being run in the embedded case only.
- *
- */
- public void testisWrapperReturnsFalse() throws SQLException {
- //test for the case when isWrapper returns false
- //using some class that will return false when
- //passed to isWrapperFor
- Class<ResultSet> wrap_class = ResultSet.class;
-
- //returning false is the correct behaviour in this case
- //Generate a message if it returns true
- if(stmt.isWrapperFor(wrap_class)) {
- fail("isWrapperFor wrongly returns true");
- } else {
- try {
- ResultSet rs1 = (ResultSet)
- stmt.unwrap(wrap_class);
- fail("unwrap does not throw the expected " +
- "exception");
- } catch (SQLException sqle) {
- //calling unwrap in this case throws an SQLException
- //check that this SQLException has the correct SQLState
- if(!SQLStateConstants.UNABLE_TO_UNWRAP.equals(sqle.getSQLState())) {
- throw sqle;
- }
- }
+
+ public void testUnwrapResultSet() throws SQLException {
+ try {
+ ResultSet rs = stmt.unwrap(ResultSet.class);
+ fail("Unwrap didn't fail.");
+ } catch (SQLException e) {
+ assertSQLState("XJ128", e);
}
}