From ef59534b848787b6f333e8538f621e463ef3e060 Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 16 Sep 2011 08:52:29 +0000 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://code.alibabatech.com/svn/druid/trunk@813 b9813039-fb51-4c41-a8b9-e21c2acb5095 --- .../pool/DruidDataSourceC3P0Adapter.java | 13 ++++++ .../DruidDataSourceC3P0AdapterTest.java | 44 +++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 src/test/java/com/alibaba/druid/bvt/pool/adapter/DruidDataSourceC3P0AdapterTest.java diff --git a/src/main/java/com/alibaba/druid/pool/DruidDataSourceC3P0Adapter.java b/src/main/java/com/alibaba/druid/pool/DruidDataSourceC3P0Adapter.java index 05c34352a7..df5481a8f5 100644 --- a/src/main/java/com/alibaba/druid/pool/DruidDataSourceC3P0Adapter.java +++ b/src/main/java/com/alibaba/druid/pool/DruidDataSourceC3P0Adapter.java @@ -2,6 +2,7 @@ package com.alibaba.druid.pool; import java.io.PrintWriter; import java.sql.Connection; +import java.sql.Driver; import java.sql.SQLException; import java.util.Properties; @@ -92,6 +93,14 @@ public class DruidDataSourceC3P0Adapter implements DataSource, DruidDataSourceC3 public String getJdbcUrl() { return dataSource.getUrl(); } + + public Driver getDriver() { + return dataSource.getDriver(); + } + + public void setDriver(Driver driver) { + dataSource.setDriver(driver); + } public void setJdbcUrl(String jdbcUrl) { dataSource.setUrl(jdbcUrl); @@ -200,6 +209,10 @@ public class DruidDataSourceC3P0Adapter implements DataSource, DruidDataSourceC3 public void setPreferredTestQuery(String preferredTestQuery) { dataSource.setValidationQuery(preferredTestQuery); } + + public void setFilters(String filters) throws SQLException { + dataSource.setFilters(filters); + } public String getDataSourceName() { return dataSource.getName(); diff --git a/src/test/java/com/alibaba/druid/bvt/pool/adapter/DruidDataSourceC3P0AdapterTest.java b/src/test/java/com/alibaba/druid/bvt/pool/adapter/DruidDataSourceC3P0AdapterTest.java new file mode 100644 index 0000000000..78cea68c09 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/pool/adapter/DruidDataSourceC3P0AdapterTest.java @@ -0,0 +1,44 @@ +package com.alibaba.druid.bvt.pool.adapter; + +import java.sql.Connection; + +import junit.framework.Assert; +import junit.framework.TestCase; + +import com.alibaba.druid.mock.MockDriver; +import com.alibaba.druid.pool.DruidDataSourceC3P0Adapter; +import com.alibaba.druid.stat.DruidDataSourceStatManager; + + +public class DruidDataSourceC3P0AdapterTest extends TestCase { + private MockDriver driver; + private DruidDataSourceC3P0Adapter dataSource; + + protected void setUp() throws Exception { + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + + driver = new MockDriver(); + + dataSource = new DruidDataSourceC3P0Adapter(); + dataSource.setJdbcUrl("jdbc:mock:xxx"); + dataSource.setDriver(driver); + dataSource.setInitialPoolSize(1); + dataSource.setMaxPoolSize(2); + dataSource.setMinPoolSize(1); + dataSource.setMaxIdleTime(300); // 300 / 10 + dataSource.setIdleConnectionTestPeriod(180); // 180 / 10 + dataSource.setTestConnectionOnCheckout(false); + dataSource.setPreferredTestQuery("SELECT 1"); + dataSource.setFilters("stat"); + } + + protected void tearDown() throws Exception { + dataSource.close(); + Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size()); + } + + public void test_basic() throws Exception { + Connection conn = dataSource.getConnection(); + conn.close(); + } +}