diff --git a/src/test/java/com/alibaba/druid/bvt/pool/Case0.java b/src/test/java/com/alibaba/druid/bvt/pool/Case0.java index 6367735fd1..7e03b880cc 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/Case0.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/Case0.java @@ -10,10 +10,13 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class Case0 extends TestCase { public void test_0() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + final DruidDataSource dataSource = new DruidDataSource(); dataSource.setDriver(new MockDriver() { @@ -57,5 +60,6 @@ public class Case0 extends TestCase { Assert.assertTrue(completeLatch.await(1, TimeUnit.SECONDS)); dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } } diff --git a/src/test/java/com/alibaba/druid/bvt/pool/Case3.java b/src/test/java/com/alibaba/druid/bvt/pool/Case3.java index dd2e77d7bd..4646dea927 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/Case3.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/Case3.java @@ -10,6 +10,7 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockStatement; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class Case3 extends TestCase { @@ -39,6 +40,10 @@ public class Case3 extends TestCase { // // dataSource.close(); // } + + protected void tearDown() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } public void test_2() throws Exception { DruidDataSource dataSource = new DruidDataSource(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/DruidDataSourceFilterTest.java b/src/test/java/com/alibaba/druid/bvt/pool/DruidDataSourceFilterTest.java index cc44b5356b..58587d2aa5 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/DruidDataSourceFilterTest.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/DruidDataSourceFilterTest.java @@ -6,10 +6,14 @@ import junit.framework.Assert; import junit.framework.TestCase; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; import com.alibaba.druid.stat.JdbcStatManager; public class DruidDataSourceFilterTest extends TestCase { - + protected void tearDown() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } + public void test_filter() throws Exception { DruidDataSource dataSource = new DruidDataSource(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/ManagedDataSourceTest.java b/src/test/java/com/alibaba/druid/bvt/pool/ManagedDataSourceTest.java index a3f9b17bce..4f7dfea190 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/ManagedDataSourceTest.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/ManagedDataSourceTest.java @@ -9,6 +9,7 @@ import org.junit.Assert; import junit.framework.TestCase; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class ManagedDataSourceTest extends TestCase { @@ -21,6 +22,7 @@ public class ManagedDataSourceTest extends TestCase { public void tearDown() throws Exception { dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } public void test_managed() throws Exception { diff --git a/src/test/java/com/alibaba/druid/bvt/pool/ParamTest.java b/src/test/java/com/alibaba/druid/bvt/pool/ParamTest.java index 4b73a2dfda..7b960a89f5 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/ParamTest.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/ParamTest.java @@ -6,10 +6,14 @@ import junit.framework.Assert; import junit.framework.TestCase; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; import com.alibaba.druid.stat.JdbcStatManager; public class ParamTest extends TestCase { - + protected void tearDown() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } + public void test_default() throws Exception { DruidDataSource dataSource = new DruidDataSource(); dataSource.setUrl("jdbc:mock:"); @@ -71,6 +75,8 @@ public class ParamTest extends TestCase { error = ex; } Assert.assertNotNull(error); + + dataSource.close(); } public void test_1() throws Exception { @@ -94,5 +100,7 @@ public class ParamTest extends TestCase { } Assert.assertEquals(10, JdbcStatManager.getInstance().getConnectionstat().getConnectCount()); + + dataSource.close(); } } diff --git a/src/test/java/com/alibaba/druid/bvt/pool/SpringFilterTest.java b/src/test/java/com/alibaba/druid/bvt/pool/SpringFilterTest.java index 23beb3e2bc..4eebe665c8 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/SpringFilterTest.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/SpringFilterTest.java @@ -15,10 +15,13 @@ import org.springframework.context.support.ClassPathXmlApplicationContext; import com.alibaba.druid.filter.FilterAdapter; import com.alibaba.druid.filter.FilterChain; import com.alibaba.druid.proxy.jdbc.ConnectionProxy; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class SpringFilterTest extends TestCase { public void test_spring() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("com/alibaba/druid/pool/spring-config-1.xml"); DataSource dataSource = (DataSource) context.getBean("dataSource"); @@ -29,6 +32,8 @@ public class SpringFilterTest extends TestCase { Assert.assertEquals(1, filter.getConnectCount()); context.close(); + + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } public static class TestFilter extends FilterAdapter { diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestDisable.java b/src/test/java/com/alibaba/druid/bvt/pool/TestDisable.java index 94ffb17520..3a71f3f213 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestDisable.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestDisable.java @@ -7,6 +7,7 @@ import junit.framework.Assert; import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; +import com.alibaba.druid.pool.DataSourceDisableException; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.stat.DruidDataSourceStatManager; @@ -51,6 +52,8 @@ public class TestDisable extends TestCase { try { startLatch.await(); Connection conn = dataSource.getConnection(); + } catch (DataSourceDisableException e) { + // skip } catch (Exception e) { e.printStackTrace(); } finally { diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle.java b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle.java index fa9ece768f..5ce8d1d8c3 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle.java @@ -8,8 +8,12 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockConnection; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class TestIdle extends TestCase { + protected void tearDown() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } public void test_idle() throws Exception { MockDriver driver = new MockDriver(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle2.java b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle2.java index 6a28b10570..51c29af9a6 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle2.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle2.java @@ -7,9 +7,14 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.pool.DruidDataSource; - +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class TestIdle2 extends TestCase { + + protected void tearDown() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } + public void test_idle2() throws Exception { MockDriver driver = new MockDriver(); @@ -25,11 +30,11 @@ public class TestIdle2 extends TestCase { dataSource.setTestWhileIdle(true); dataSource.setTestOnBorrow(false); dataSource.setValidationQuery("SELECT 1"); - + { Assert.assertEquals(0, dataSource.getCreateCount()); Assert.assertEquals(0, dataSource.getActiveCount()); - + Connection conn = dataSource.getConnection(); Assert.assertEquals(dataSource.getInitialSize(), dataSource.getCreateCount()); @@ -41,10 +46,10 @@ public class TestIdle2 extends TestCase { Assert.assertEquals(true, dataSource.getPoolingCount() == driver.getConnections().size()); Assert.assertEquals(0, dataSource.getActiveCount()); } - + String text = dataSource.toString(); System.out.println(text); - + { int count = 14; Connection[] connections = new Connection[count]; @@ -62,18 +67,18 @@ public class TestIdle2 extends TestCase { Assert.assertEquals(0, dataSource.getActiveCount()); Assert.assertEquals(14, driver.getConnections().size()); } - + for (int i = 0; i < 100; ++i) { Assert.assertEquals(0, dataSource.getActiveCount()); Connection conn = dataSource.getConnection(); - + Assert.assertEquals(1, dataSource.getActiveCount()); - + Thread.sleep(1); conn.close(); } Assert.assertEquals(true, dataSource.getPoolingCount() == dataSource.getMaxActive()); - + dataSource.close(); } } diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle3_Concurrent_Starvation.java b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle3_Concurrent_Starvation.java index c9041493c0..c98addccaf 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestIdle3_Concurrent_Starvation.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestIdle3_Concurrent_Starvation.java @@ -12,6 +12,7 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class TestIdle3_Concurrent_Starvation extends TestCase { @@ -25,8 +26,8 @@ public class TestIdle3_Concurrent_Starvation extends TestCase { dataSource.setUrl("jdbc:mock:xxx"); dataSource.setDriver(driver); dataSource.setInitialSize(1); - dataSource.setMaxActive(1000); - dataSource.setMaxIdle(1000); + dataSource.setMaxActive(100); + dataSource.setMaxIdle(100); dataSource.setMinIdle(1); dataSource.setMinEvictableIdleTimeMillis(300 * 1000); // 300 / 10 dataSource.setTimeBetweenEvictionRunsMillis(180 * 1000); // 180 / 10 @@ -39,6 +40,7 @@ public class TestIdle3_Concurrent_Starvation extends TestCase { protected void tearDown() throws Exception { dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } public void test_idle2() throws Exception { @@ -62,12 +64,12 @@ public class TestIdle3_Concurrent_Starvation extends TestCase { } for (int i = 0; i < 1; ++i) { - final int threadCount = 1000; + final int threadCount = 100; concurrent(threadCount); } // 连续打开关闭单个连接 - for (int i = 0; i < 1000; ++i) { + for (int i = 0; i < 100; ++i) { Assert.assertEquals(0, dataSource.getActiveCount()); Connection conn = dataSource.getConnection(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestPoolPreparedStatement.java b/src/test/java/com/alibaba/druid/bvt/pool/TestPoolPreparedStatement.java index ddb71a0ca9..bbf31d13e4 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestPoolPreparedStatement.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestPoolPreparedStatement.java @@ -9,6 +9,7 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.mock.MockPreparedStatement; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class TestPoolPreparedStatement extends TestCase { @@ -36,6 +37,7 @@ public class TestPoolPreparedStatement extends TestCase { protected void tearDown() throws Exception { dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } public void test_removeAbandoned() throws Exception { diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestRemoveAbandoned.java b/src/test/java/com/alibaba/druid/bvt/pool/TestRemoveAbandoned.java index e2482dcfdc..501a7806b1 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestRemoveAbandoned.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestRemoveAbandoned.java @@ -7,6 +7,7 @@ import junit.framework.TestCase; import com.alibaba.druid.mock.MockDriver; import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.DruidDataSourceStatManager; public class TestRemoveAbandoned extends TestCase { @@ -35,7 +36,9 @@ public class TestRemoveAbandoned extends TestCase { protected void tearDown() throws Exception { dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); } + public void test_removeAbandoned() throws Exception { Connection conn = dataSource.getConnection(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestStat.java b/src/test/java/com/alibaba/druid/bvt/pool/TestStat.java index ef3e920b9a..fe5e05ecb4 100644 --- a/src/test/java/com/alibaba/druid/bvt/pool/TestStat.java +++ b/src/test/java/com/alibaba/druid/bvt/pool/TestStat.java @@ -16,6 +16,8 @@ public class TestStat extends TestCase { private DruidDataSource dataSource; protected void setUp() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + dataSource = new DruidDataSource(); dataSource.setUrl("jdbc:mock:xxx"); dataSource.setName("com.alibaba.dragoon.monitor");