package bitronix.tm.resource.jdbc; import bitronix.tm.mock.resource.jdbc.MockitoXADataSource; import junit.framework.TestCase; import java.sql.Connection; /** * @author Ludovic Orban */ public class PoolingDataSourceTest extends TestCase { public void testInjectedXaFactory() throws Exception { PoolingDataSource pds = new PoolingDataSource(); try { pds.setUniqueName("pds"); pds.setMinPoolSize(1); pds.setMaxPoolSize(1); pds.setXaDataSource(new MockitoXADataSource()); pds.init(); Connection connection = pds.getConnection(); connection.close(); } finally { pds.close(); } } public void testEffectiveConnectionTimeoutWhenSet() { PoolingDataSource pds = new PoolingDataSource(); pds.setConnectionTestTimeout(10); assertEquals(10, pds.getEffectiveConnectionTestTimeout()); } public void testEffectiveConnectionTimeoutWhenAcquisitionTimeoutSet() { PoolingDataSource pds = new PoolingDataSource(); pds.setAcquisitionTimeout(10); assertEquals(10, pds.getEffectiveConnectionTestTimeout()); } public void testEffectiveConnectionTimeoutIsMinimumValue() { PoolingDataSource pds = new PoolingDataSource(); pds.setConnectionTestTimeout(5); pds.setAcquisitionTimeout(10); assertEquals(5, pds.getEffectiveConnectionTestTimeout()); pds.setAcquisitionTimeout(15); pds.setConnectionTestTimeout(20); assertEquals(15, pds.getEffectiveConnectionTestTimeout()); } public void testDefaultEffectiveAcquisitionTimeout() { PoolingDataSource pds = new PoolingDataSource(); assertEquals(30, pds.getEffectiveConnectionTestTimeout()); } }