public static DataSource getDataSource(Class<?> driver, String url) throws Exception { return getDataSource(driver, url, null, null); }
public static DataSource getMockDataSource(String databaseProductName) throws Exception { return getMockDataSource(databaseProductName, null); }
public static DataSource getMockDataSource() throws Exception { return getMockDataSource(DatabaseType.HSQL.getProductName()); }
@Test public void testH2() throws Exception { DataSource dataSource = DatabaseTypeTestUtils.getDataSource(org.h2.Driver.class, "jdbc:h2:file:./build/data/sample"); assertEquals(DatabaseType.H2, DatabaseType.fromMetaData(dataSource)); dataSource.getConnection(); }
@Test public void testFromMetaDataForDB2AS400() throws Exception { DataSource toolboxDs = DatabaseTypeTestUtils.getMockDataSource("DB2 UDB for AS/400", "07.01.0000 V7R1m0"); assertEquals(DB2AS400, DatabaseType.fromMetaData(toolboxDs)); DataSource nativeDs = DatabaseTypeTestUtils.getMockDataSource("DB2 UDB for AS/400", "V7R1M0"); assertEquals(DB2AS400, DatabaseType.fromMetaData(nativeDs)); DataSource prdidDs = DatabaseTypeTestUtils.getMockDataSource("DB2 UDB for AS/400", "QSQ07010"); assertEquals(DB2AS400, DatabaseType.fromMetaData(prdidDs)); }
@Test public void testDerby() throws Exception { DataSource dataSource = DatabaseTypeTestUtils.getDataSource(org.apache.derby.jdbc.EmbeddedDriver.class, "jdbc:derby:./build/derby-home/test;create=true", "sa", ""); assertEquals(DatabaseType.DERBY, DatabaseType.fromMetaData(dataSource)); dataSource.getConnection(); }
@Test public void testFromMetaDataForDB2ZOS() throws Exception { DataSource oldDs = DatabaseTypeTestUtils.getMockDataSource("DB2", "DSN08015"); assertEquals(DB2ZOS, DatabaseType.fromMetaData(oldDs)); DataSource newDs = DatabaseTypeTestUtils.getMockDataSource("DB2 for DB2 UDB for z/OS", "DSN08015"); assertEquals(DB2ZOS, DatabaseType.fromMetaData(newDs)); }
@Test public void testFromMetaDataForDB2() throws Exception { DataSource oldDs = DatabaseTypeTestUtils.getMockDataSource("DB2/Linux", "SQL0901"); assertEquals(DB2, DatabaseType.fromMetaData(oldDs)); DataSource newDs = DatabaseTypeTestUtils.getMockDataSource("DB2/NT", "SQL0901"); assertEquals(DB2, DatabaseType.fromMetaData(newDs)); }
@Test public void testFromMetaDataForPostgres() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("PostgreSQL"); assertEquals(POSTGRES, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForSqlServer() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("Microsoft SQL Server"); assertEquals(SQLSERVER, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForOracle() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("Oracle"); assertEquals(ORACLE, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForDB2VSE() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("DB2 for DB2 for z/OS VUE", "ARI08015"); assertEquals(DB2VSE, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForDerby() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("Apache Derby"); assertEquals(DERBY, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForHsql() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("HSQL Database Engine"); assertEquals(HSQL, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForMySql() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("MySQL"); assertEquals(MYSQL, DatabaseType.fromMetaData(ds)); }
@Test public void testFromMetaDataForSybase() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource("Adaptive Server Enterprise"); assertEquals(SYBASE, DatabaseType.fromMetaData(ds)); }
public SqlPagingQueryProviderFactoryBeanTests() throws Exception { factory.setSelectClause("id, name, age"); factory.setFromClause("foo"); factory.setWhereClause("bar = 1"); Map<String, Order> sortKeys = new LinkedHashMap<>(); sortKeys.put("id", Order.ASCENDING); factory.setSortKeys(sortKeys); DataSource dataSource = DatabaseTypeTestUtils.getMockDataSource(DatabaseType.HSQL.getProductName(), "100.0.0"); factory.setDataSource(dataSource); }
@Test(expected=MetaDataAccessException.class) public void testBadMetaData() throws Exception { DataSource ds = DatabaseTypeTestUtils.getMockDataSource(new MetaDataAccessException("Bad!")); assertEquals(SYBASE, DatabaseType.fromMetaData(ds)); }
@Test(expected=IllegalArgumentException.class) public void testMissingMetaData() throws Exception { factory.setDataSource(DatabaseTypeTestUtils.getMockDataSource(new MetaDataAccessException("foo"))); PagingQueryProvider provider = factory.getObject(); assertNotNull(provider); }