1 21 22 package org.apache.derbyTesting.functionTests.tests.jdbc4; 23 24 import junit.framework.*; 25 26 import org.apache.derbyTesting.functionTests.util.TestDataSourceFactory; 27 import org.apache.derbyTesting.junit.BaseJDBCTestCase; 28 29 import java.sql.*; 30 import javax.sql.*; 31 32 35 36 public class DataSourceTest extends BaseJDBCTestCase { 37 38 private DataSource ds = null; 40 41 48 public DataSourceTest(String name) { 49 super(name); 50 } 51 52 55 public void setUp() { 56 ds = TestDataSourceFactory.getDataSource(); 57 } 58 59 64 public void tearDown() { 65 ds = null; 66 } 67 68 public void testIsWrapperForDataSource() throws SQLException { 69 assertTrue(ds.isWrapperFor(DataSource.class)); 70 } 71 72 public void testIsNotWrapperForPoolDataSource() throws SQLException { 73 assertFalse(ds.isWrapperFor(ConnectionPoolDataSource.class)); 74 } 75 76 public void testIsNotWrapperForXADataSource() throws SQLException { 77 assertFalse(ds.isWrapperFor(XADataSource.class)); 78 } 79 80 public void testIsNotWrapperForResultSet() throws SQLException { 81 assertFalse(ds.isWrapperFor(ResultSet.class)); 82 } 83 84 public void testUnwrapDataSource() throws SQLException { 85 DataSource ds2 = ds.unwrap(DataSource.class); 86 assertSame("Unwrap returned wrong object.", ds, ds2); 87 } 88 89 public void testUnwrapConnectionPoolDataSource() { 90 try { 91 ConnectionPoolDataSource cpds = 92 ds.unwrap(ConnectionPoolDataSource.class); 93 fail("Unwrap didn't fail."); 94 } catch (SQLException e) { 95 assertSQLState("XJ128", e); 96 } 97 } 98 99 public void testUnwrapXADataSource() { 100 try { 101 XADataSource xads = ds.unwrap(XADataSource.class); 102 fail("Unwrap didn't fail."); 103 } catch (SQLException e) { 104 assertSQLState("XJ128", e); 105 } 106 } 107 108 public void testUnwrapResultSet() { 109 try { 110 ResultSet rs = ds.unwrap(ResultSet.class); 111 fail("Unwrap didn't fail."); 112 } catch (SQLException e) { 113 assertSQLState("XJ128", e); 114 } 115 } 116 117 120 public static Test suite() { 121 return (new TestSuite(DataSourceTest.class, 122 "DataSourceTest suite")); 123 } 124 } 125 | Popular Tags |