From 43743a9bdcdb8085b6e5a6bd422f09e7c364921f Mon Sep 17 00:00:00 2001 From: wenshao Date: Fri, 16 Sep 2011 10:39:09 +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@818 b9813039-fb51-4c41-a8b9-e21c2acb5095 --- .../druid/pool/PoolablePreparedStatement.java | 2 +- .../pool/basic/PreparedStatementKeyTest.java | 63 +++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 src/test/java/com/alibaba/druid/bvt/pool/basic/PreparedStatementKeyTest.java diff --git a/src/main/java/com/alibaba/druid/pool/PoolablePreparedStatement.java b/src/main/java/com/alibaba/druid/pool/PoolablePreparedStatement.java index 385296fab0..20314d9995 100644 --- a/src/main/java/com/alibaba/druid/pool/PoolablePreparedStatement.java +++ b/src/main/java/com/alibaba/druid/pool/PoolablePreparedStatement.java @@ -699,7 +699,7 @@ public class PoolablePreparedStatement extends PoolableStatement implements Prep protected final MethodType methodType; - PreparedStatementKey(String sql, String catalog, MethodType methodType){ + public PreparedStatementKey(String sql, String catalog, MethodType methodType){ if (sql == null) { throw new IllegalArgumentException("sql is null"); } diff --git a/src/test/java/com/alibaba/druid/bvt/pool/basic/PreparedStatementKeyTest.java b/src/test/java/com/alibaba/druid/bvt/pool/basic/PreparedStatementKeyTest.java new file mode 100644 index 0000000000..93d19914d9 --- /dev/null +++ b/src/test/java/com/alibaba/druid/bvt/pool/basic/PreparedStatementKeyTest.java @@ -0,0 +1,63 @@ +package com.alibaba.druid.bvt.pool.basic; + +import org.junit.Assert; + +import junit.framework.TestCase; + +import com.alibaba.druid.pool.PoolablePreparedStatement.PreparedStatementKey; +import com.alibaba.druid.pool.PreparedStatementPool.MethodType; + + +public class PreparedStatementKeyTest extends TestCase { + public void test_equals_0() throws Exception { + PreparedStatementKey k1 = new PreparedStatementKey("x1", "c1", MethodType.M1); + PreparedStatementKey k2 = new PreparedStatementKey("x1", "c2", MethodType.M1); + PreparedStatementKey k3 = new PreparedStatementKey("x1", "c3", MethodType.M1); + + Assert.assertFalse(k1.equals(k2)); + Assert.assertFalse(k1.equals(k3)); + Assert.assertFalse(k2.equals(k1)); + Assert.assertFalse(k2.equals(k3)); + Assert.assertFalse(k3.equals(k2)); + Assert.assertFalse(k3.equals(k1)); + } + + public void test_equals_2() throws Exception { + PreparedStatementKey k1 = new PreparedStatementKey("x1", "c1", MethodType.M1); + PreparedStatementKey k2 = new PreparedStatementKey("x2", "c1", MethodType.M1); + PreparedStatementKey k3 = new PreparedStatementKey("x3", "c1", MethodType.M1); + + Assert.assertFalse(k1.equals(k2)); + Assert.assertFalse(k1.equals(k3)); + Assert.assertFalse(k2.equals(k1)); + Assert.assertFalse(k2.equals(k3)); + Assert.assertFalse(k3.equals(k2)); + Assert.assertFalse(k3.equals(k1)); + } + + public void test_equals_3() throws Exception { + PreparedStatementKey k1 = new PreparedStatementKey("x1", "c1", MethodType.M1); + PreparedStatementKey k2 = new PreparedStatementKey("x1", "c1", MethodType.M2); + PreparedStatementKey k3 = new PreparedStatementKey("x1", "c1", MethodType.M3); + + Assert.assertFalse(k1.equals(k2)); + Assert.assertFalse(k1.equals(k3)); + Assert.assertFalse(k2.equals(k1)); + Assert.assertFalse(k2.equals(k3)); + Assert.assertFalse(k3.equals(k2)); + Assert.assertFalse(k3.equals(k1)); + } + + public void test_equals_4() throws Exception { + PreparedStatementKey k1 = new PreparedStatementKey("x1", "c1", MethodType.M1); + PreparedStatementKey k2 = new PreparedStatementKey("x1", "c2", MethodType.M1); + PreparedStatementKey k3 = new PreparedStatementKey("x1", null, MethodType.M1); + + Assert.assertFalse(k1.equals(k2)); + Assert.assertFalse(k1.equals(k3)); + Assert.assertFalse(k2.equals(k1)); + Assert.assertFalse(k2.equals(k3)); + Assert.assertFalse(k3.equals(k2)); + Assert.assertFalse(k3.equals(k1)); + } +}