public void testUrlEncodedProperties() throws SQLException { TeiidDriver td = Mockito.mock(TeiidDriver.class); TeiidDataSource tds = new TeiidDataSource(td); tds.setDatabaseName("y"); tds.setUser("%25user"); tds.setServerName("x"); tds.getConnection(); ArgumentCaptor<Properties> argument = ArgumentCaptor.forClass(Properties.class); Mockito.verify(td).connect(Mockito.eq("jdbc:teiid:y@mm://x:0"), argument.capture()); Properties p = argument.getValue(); assertEquals("%25user", p.getProperty(BaseDataSource.USER_NAME)); }
public void testGetConnectionWithUser() throws SQLException { TeiidDriver td = Mockito.mock(TeiidDriver.class); TeiidDataSource tds = new TeiidDataSource(td); tds.setDatabaseName("y"); tds.setUser("%25user"); tds.setServerName("x"); tds.getConnection("user", "password"); ArgumentCaptor<Properties> argument = ArgumentCaptor.forClass(Properties.class); Mockito.verify(td).connect(Mockito.eq("jdbc:teiid:y@mm://x:0"), argument.capture()); Properties p = argument.getValue(); assertEquals("user", p.getProperty(BaseDataSource.USER_NAME)); }
public void testKerberos() throws SQLException { TeiidDataSource tds = new TeiidDataSource(); tds.setDatabaseName("y"); tds.setUser("%25user"); tds.setJaasName("x"); tds.setKerberosServicePrincipleName("z"); tds.setServerName("t"); compareUrls("jdbc:teiid:y@mm://t:0;fetchSize=2048;ApplicationName=JDBC;user=%2525user;jaasName=x;VirtualDatabaseName=y;kerberosServicePrincipleName=z", tds.buildURL().getJDBCURL()); }
public Connection helpTestConnection( final String vdbName, final String vdbVersion, final String serverName, final int portNumber, final String alternateServers, final String user, final String password, final String dataSourceName, final String txnAutoWrap, final String partialMode, final String configFile ) throws SQLException { TeiidDataSource ds = new TeiidDataSource(); ds.setServerName(serverName); ds.setDatabaseVersion(vdbVersion); ds.setDatabaseName(vdbName); ds.setPortNumber(portNumber); ds.setUser(user); ds.setPassword(password); ds.setDataSourceName(dataSourceName); ds.setAutoCommitTxn(txnAutoWrap); ds.setPartialResultsMode(partialMode); ds.setAlternateServers(alternateServers); ds.setUseJDBC4ColumnNameAndLabelSemantics(true); return ds.getConnection(); }