From ac8c11ea68402f5edc3efab3c6b3a4bce1fdc75c Mon Sep 17 00:00:00 2001 From: wenshao Date: Sat, 8 Jun 2013 01:14:13 +0800 Subject: [PATCH] add testcase --- .../bvt/proxy/filter/MergeStatFilterTest.java | 2 +- .../proxy/filter/MergeStatFilterTest2.java | 3 +- .../proxy/filter/MergeStatFilterTest3.java | 3 +- .../filter/MergeStatFilterTest_tddl.java | 2 - .../filter/MergeStatFilterTest_tddl_1.java | 2 - .../filter/MergeStatFilterTest_tddl_2.java | 2 - .../filter/MergeStatFilterTest_tddl_3.java | 80 ++++++++++++++++++ .../filter/MergeStatFilterTest_tddl_4.java | 81 +++++++++++++++++++ .../bvt/proxy/filter/StatFilterTest3.java | 4 +- 9 files changed, 169 insertions(+), 10 deletions(-) create mode 100644 src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_3.java create mode 100644 src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_4.java diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest.java index f41437716e..7b14fe7d19 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest.java @@ -18,7 +18,7 @@ package com.alibaba.druid.bvt.proxy.filter; import java.sql.Connection; import java.sql.Statement; -import junit.framework.Assert; +import org.junit.Assert; import junit.framework.TestCase; import com.alibaba.druid.pool.DruidDataSource; diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest2.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest2.java index e737aef849..00a7a03a29 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest2.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest2.java @@ -18,9 +18,10 @@ package com.alibaba.druid.bvt.proxy.filter; import java.sql.Connection; import java.sql.Statement; -import junit.framework.Assert; import junit.framework.TestCase; +import org.junit.Assert; + import com.alibaba.druid.pool.DruidDataSource; public class MergeStatFilterTest2 extends TestCase { diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest3.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest3.java index 30f7cbe255..53678876e1 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest3.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest3.java @@ -19,9 +19,10 @@ import java.io.InputStreamReader; import java.sql.Connection; import java.sql.Statement; -import junit.framework.Assert; import junit.framework.TestCase; +import org.junit.Assert; + import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.util.IOUtils; diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl.java index a07e759202..7638a10633 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl.java @@ -17,7 +17,6 @@ package com.alibaba.druid.bvt.proxy.filter; import java.sql.Connection; import java.sql.Statement; -import java.util.Set; import javax.management.openmbean.TabularData; @@ -26,7 +25,6 @@ import junit.framework.TestCase; import org.junit.Assert; import com.alibaba.druid.pool.DruidDataSource; -import com.alibaba.druid.stat.DruidDataSourceStatManager; import com.alibaba.druid.stat.JdbcStatManager; import com.alibaba.druid.support.json.JSONUtils; import com.alibaba.druid.util.JdbcUtils; diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_1.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_1.java index 2e598dd871..30858d02b6 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_1.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_1.java @@ -17,7 +17,6 @@ package com.alibaba.druid.bvt.proxy.filter; import java.sql.Connection; import java.sql.Statement; -import java.util.Set; import javax.management.openmbean.TabularData; @@ -26,7 +25,6 @@ import junit.framework.TestCase; import org.junit.Assert; import com.alibaba.druid.pool.DruidDataSource; -import com.alibaba.druid.stat.DruidDataSourceStatManager; import com.alibaba.druid.stat.JdbcStatManager; import com.alibaba.druid.support.json.JSONUtils; import com.alibaba.druid.util.JdbcUtils; diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_2.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_2.java index 7918fe4e3b..5fb0fb39b0 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_2.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_2.java @@ -17,7 +17,6 @@ package com.alibaba.druid.bvt.proxy.filter; import java.sql.Connection; import java.sql.Statement; -import java.util.Set; import javax.management.openmbean.TabularData; @@ -26,7 +25,6 @@ import junit.framework.TestCase; import org.junit.Assert; import com.alibaba.druid.pool.DruidDataSource; -import com.alibaba.druid.stat.DruidDataSourceStatManager; import com.alibaba.druid.stat.JdbcStatManager; import com.alibaba.druid.support.json.JSONUtils; import com.alibaba.druid.util.JdbcUtils; diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_3.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_3.java new file mode 100644 index 0000000000..cc2783f357 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_3.java @@ -0,0 +1,80 @@ +/* + * Copyright 1999-2011 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.druid.bvt.proxy.filter; + +import java.sql.Connection; +import java.sql.PreparedStatement; + +import javax.management.openmbean.TabularData; + +import junit.framework.TestCase; + +import org.junit.Assert; + +import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.JdbcStatManager; +import com.alibaba.druid.support.json.JSONUtils; +import com.alibaba.druid.util.JdbcUtils; + +public class MergeStatFilterTest_tddl_3 extends TestCase { + + private DruidDataSource dataSource; + + protected void setUp() throws Exception { + TabularData sqlList = JdbcStatManager.getInstance().getSqlList(); + if (sqlList.size() > 0) { + for (Object item : JdbcStatManager.getInstance().getSqlList().values()) { + String text = JSONUtils.toJSONString(item); + System.out.println(text); + } + } + + Assert.assertEquals(0, JdbcStatManager.getInstance().getSqlList().size()); + + dataSource = new DruidDataSource(); + dataSource.setUrl("jdbc:mock:xx"); + dataSource.setFilters("mergeStat"); + dataSource.setDbType("mysql"); + dataSource.setConnectionProperties("druid.useGloalDataSourceStat"); + } + + protected void tearDown() throws Exception { + JdbcUtils.close(dataSource); + + Assert.assertEquals(0, JdbcStatManager.getInstance().getSqlList().size()); + } + + public void test_merge() throws Exception { + for (int i = 1000; i < 2000; ++i) { + String tableName = "t_" + i; + + Connection conn = dataSource.getConnection(); + + String sql = "update " + tableName + " SET a = ? WHERE b = ?"; + PreparedStatement stmt = conn.prepareStatement(sql); + stmt.setString(1, "aaa"); + stmt.setInt(1, 2); + stmt.execute(); + stmt.close(); + + conn.close(); + } + + Assert.assertEquals(1, dataSource.getDataSourceStat().getSqlStatMap().size()); + + } + +} diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_4.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_4.java new file mode 100644 index 0000000000..0cca94b87f --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/MergeStatFilterTest_tddl_4.java @@ -0,0 +1,81 @@ +/* + * Copyright 1999-2011 Alibaba Group Holding Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.alibaba.druid.bvt.proxy.filter; + +import java.sql.Connection; +import java.sql.PreparedStatement; + +import javax.management.openmbean.TabularData; + +import junit.framework.TestCase; + +import org.junit.Assert; + +import com.alibaba.druid.pool.DruidDataSource; +import com.alibaba.druid.stat.JdbcStatManager; +import com.alibaba.druid.support.json.JSONUtils; +import com.alibaba.druid.util.JdbcUtils; + +public class MergeStatFilterTest_tddl_4 extends TestCase { + + private DruidDataSource dataSource; + + protected void setUp() throws Exception { + TabularData sqlList = JdbcStatManager.getInstance().getSqlList(); + if (sqlList.size() > 0) { + for (Object item : JdbcStatManager.getInstance().getSqlList().values()) { + String text = JSONUtils.toJSONString(item); + System.out.println(text); + } + } + + Assert.assertEquals(0, JdbcStatManager.getInstance().getSqlList().size()); + + dataSource = new DruidDataSource(); + dataSource.setUrl("jdbc:mock:xx"); + dataSource.setFilters("mergeStat"); + dataSource.setDbType("mysql"); + dataSource.setConnectionProperties("druid.useGloalDataSourceStat"); + dataSource.setPoolPreparedStatements(true); + } + + protected void tearDown() throws Exception { + JdbcUtils.close(dataSource); + + Assert.assertEquals(0, JdbcStatManager.getInstance().getSqlList().size()); + } + + public void test_merge() throws Exception { + for (int i = 1000; i < 2000; ++i) { + String tableName = "t_" + i; + + Connection conn = dataSource.getConnection(); + + String sql = "update " + tableName + " SET a = ? WHERE b = ?"; + PreparedStatement stmt = conn.prepareStatement(sql); + stmt.setString(1, "aaa"); + stmt.setInt(1, 2); + stmt.execute(); + stmt.close(); + + conn.close(); + } + + Assert.assertEquals(1, dataSource.getDataSourceStat().getSqlStatMap().size()); + + } + +} diff --git a/src/test/java/com/alibaba/druid/bvt/proxy/filter/StatFilterTest3.java b/src/test/java/com/alibaba/druid/bvt/proxy/filter/StatFilterTest3.java index 5f9c636f58..9ce9f486a0 100644 --- a/src/test/java/com/alibaba/druid/bvt/proxy/filter/StatFilterTest3.java +++ b/src/test/java/com/alibaba/druid/bvt/proxy/filter/StatFilterTest3.java @@ -1,11 +1,13 @@ package com.alibaba.druid.bvt.proxy.filter; -import junit.framework.Assert; import junit.framework.TestCase; +import org.junit.Assert; + import com.alibaba.druid.filter.stat.StatFilter; public class StatFilterTest3 extends TestCase { + @SuppressWarnings("deprecation") public void test_dbType() throws Exception { StatFilter filter = new StatFilter();