mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
enhance management
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
package com.alibaba.druid;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
|
||||
|
||||
public class Bug_for_alibank extends TestCase {
|
||||
public void test_bug() throws Exception {
|
||||
String jsonStrz = "{addContact:[{\"address\":\"=\\\\\\\\\\\'\'\\");|]*{%0d%0a<%00\"}]}";
|
||||
System.out.println(jsonStrz);
|
||||
Object o = JSON.parseObject(jsonStrz.replaceAll("\\\\", ""));
|
||||
System.out.println(JSON.toJSONString(o));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.alibaba.druid.bvt.pool;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.alibaba.druid.mock.MockConnection;
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.druid.stat.DruidDataSourceStatManager;
|
||||
|
||||
public class Bug_for_dupCloseStmtError extends TestCase {
|
||||
|
||||
protected DruidDataSource dataSource;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
dataSource = new DruidDataSource();
|
||||
dataSource.setUrl("jdbc:mock:");
|
||||
dataSource.setPoolPreparedStatements(false);
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
dataSource.close();
|
||||
for (DruidDataSource dataSource : DruidDataSourceStatManager.getDruidDataSourceInstances()) {
|
||||
dataSource.close();
|
||||
}
|
||||
}
|
||||
|
||||
public void test_0() throws Exception {
|
||||
{
|
||||
Connection conn = dataSource.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement("select 1");
|
||||
stmt.setString(1, "xx");
|
||||
|
||||
MockConnection mockConn = conn.unwrap(MockConnection.class);
|
||||
mockConn.close();
|
||||
conn.close();
|
||||
stmt.close();
|
||||
}
|
||||
{
|
||||
Connection conn = dataSource.getConnection();
|
||||
PreparedStatement stmt = conn.prepareStatement("select 1");
|
||||
stmt.close();
|
||||
conn.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -44,7 +44,15 @@ public class TestConcurrent extends TestCase {
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
dataSource.close();
|
||||
Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size());
|
||||
|
||||
int size = DruidDataSourceStatManager.getInstance().getDataSourceList().size();
|
||||
if (size > 0) {
|
||||
for (DruidDataSource dataSource : DruidDataSourceStatManager.getDruidDataSourceInstances()) {
|
||||
dataSource.close();
|
||||
System.out.println("unclosed datasource : " + dataSource.getObjectName());
|
||||
}
|
||||
Assert.fail("size : " + size);
|
||||
}
|
||||
}
|
||||
|
||||
public void test_0() throws Exception {
|
||||
|
||||
@@ -42,7 +42,7 @@ public class TestDataSourceBasic2 extends TestCase {
|
||||
Assert.assertEquals(1, dataSource.getConnectionInitSqls().size());
|
||||
|
||||
Assert.assertEquals(30 * 1000, dataSource.getTimeBetweenConnectErrorMillis());
|
||||
Assert.assertEquals(-1, dataSource.getMaxOpenPreparedStatements());
|
||||
Assert.assertEquals(234, dataSource.getMaxOpenPreparedStatements());
|
||||
Assert.assertEquals(300, dataSource.getRemoveAbandonedTimeout());
|
||||
dataSource.setRemoveAbandonedTimeout(400);
|
||||
Assert.assertEquals(400, dataSource.getRemoveAbandonedTimeout());
|
||||
|
||||
@@ -11,6 +11,7 @@ import com.alibaba.druid.mock.MockStatement;
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.druid.pool.ha.HADataSource;
|
||||
import com.alibaba.druid.pool.ha.MultiDataSourceStatement;
|
||||
import com.alibaba.druid.stat.DruidDataSourceStatManager;
|
||||
|
||||
public class HADataSourceTest extends TestCase {
|
||||
|
||||
@@ -20,6 +21,8 @@ public class HADataSourceTest extends TestCase {
|
||||
private HADataSource dataSourceHA;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size());
|
||||
|
||||
dataSourceA = new DruidDataSource();
|
||||
dataSourceA.setUrl("jdbc:mock:x1");
|
||||
dataSourceA.setFilters("trace");
|
||||
@@ -35,6 +38,12 @@ public class HADataSourceTest extends TestCase {
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
dataSourceHA.close();
|
||||
|
||||
for (DruidDataSource dataSource : DruidDataSourceStatManager.getDruidDataSourceInstances()) {
|
||||
dataSource.close();
|
||||
}
|
||||
|
||||
Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size());
|
||||
}
|
||||
|
||||
public void test_createStatement_0() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user