use of com.yahoo.athenz.zms.store.jdbc.JDBCObjectStore in project athenz by yahoo.
the class JDBCObjectStoreTest method testGetConnectionReadWriteOnly.
@Test
public void testGetConnectionReadWriteOnly() throws SQLException {
PoolableDataSource mockDataSrc = Mockito.mock(PoolableDataSource.class);
Connection mockConn = Mockito.mock(Connection.class);
Mockito.doReturn(mockConn).when(mockDataSrc).getConnection();
JDBCObjectStore store = new JDBCObjectStore(mockDataSrc, null);
store.setOperationTimeout(60);
assertNotNull(store.getConnection(true, true));
// without read store we should also get a connection for a read
// only operation
assertNotNull(store.getConnection(true, true));
store.clearConnections();
}
use of com.yahoo.athenz.zms.store.jdbc.JDBCObjectStore in project athenz by yahoo.
the class JDBCObjectStoreTest method testGetConnectionException.
@Test
public void testGetConnectionException() throws SQLException {
PoolableDataSource mockDataRwSrc = Mockito.mock(PoolableDataSource.class);
Mockito.doThrow(new SQLException()).when(mockDataRwSrc).getConnection();
PoolableDataSource mockDataRoSrc = Mockito.mock(PoolableDataSource.class);
Mockito.doThrow(new SQLException()).when(mockDataRoSrc).getConnection();
try {
JDBCObjectStore store = new JDBCObjectStore(mockDataRwSrc, mockDataRoSrc);
store.getConnection(true, true);
fail();
} catch (RuntimeException ex) {
assertTrue(true);
}
try {
JDBCObjectStore store = new JDBCObjectStore(mockDataRwSrc, mockDataRoSrc);
store.getConnection(true, true);
fail();
} catch (RuntimeException ex) {
assertTrue(true);
}
}
use of com.yahoo.athenz.zms.store.jdbc.JDBCObjectStore in project athenz by yahoo.
the class JDBCObjectStoreTest method testGetConnection.
@Test
public void testGetConnection() throws SQLException {
PoolableDataSource mockDataRwSrc = Mockito.mock(PoolableDataSource.class);
Connection rwMockConn = Mockito.mock(Connection.class);
Mockito.doReturn(rwMockConn).when(mockDataRwSrc).getConnection();
PoolableDataSource mockDataRoSrc = Mockito.mock(PoolableDataSource.class);
Connection roMockConn = Mockito.mock(Connection.class);
Mockito.doReturn(roMockConn).when(mockDataRoSrc).getConnection();
JDBCObjectStore store = new JDBCObjectStore(mockDataRwSrc, mockDataRoSrc);
JDBCConnection jdbcConn = (JDBCConnection) store.getConnection(true, true);
assertEquals(jdbcConn.con, rwMockConn);
jdbcConn = (JDBCConnection) store.getConnection(true, false);
assertEquals(jdbcConn.con, roMockConn);
}
use of com.yahoo.athenz.zms.store.jdbc.JDBCObjectStore in project athenz by yahoo.
the class JDBCObjectStoreTest method testGetConnectionReadOnly.
@Test
public void testGetConnectionReadOnly() throws SQLException {
PoolableDataSource mockDataSrc = Mockito.mock(PoolableDataSource.class);
Connection mockConn = Mockito.mock(Connection.class);
Mockito.doReturn(mockConn).when(mockDataSrc).getConnection();
JDBCObjectStore store = new JDBCObjectStore(null, mockDataSrc);
assertNotNull(store.getConnection(true, false));
}
use of com.yahoo.athenz.zms.store.jdbc.JDBCObjectStore in project athenz by yahoo.
the class JDBCObjectStoreTest method testGetReadWriteConnectionException.
@Test
public void testGetReadWriteConnectionException() throws SQLException {
PoolableDataSource mockDataRwSrc = Mockito.mock(PoolableDataSource.class);
Connection mockConn = Mockito.mock(Connection.class);
Mockito.doReturn(mockConn).when(mockDataRwSrc).getConnection();
PoolableDataSource mockDataRoSrc = Mockito.mock(PoolableDataSource.class);
Mockito.doThrow(new SQLException()).when(mockDataRoSrc).getConnection();
JDBCObjectStore store = new JDBCObjectStore(mockDataRwSrc, mockDataRoSrc);
// we should get back same read-write connection for both cases
JDBCConnection jdbcConn = (JDBCConnection) store.getConnection(true, true);
assertEquals(jdbcConn.con, mockConn);
jdbcConn = (JDBCConnection) store.getConnection(true, false);
assertEquals(jdbcConn.con, mockConn);
}
Aggregations