mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
refactor ConfigFilter
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package com.alibaba.druid.bvt.filter.config;
|
||||
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.alibaba.druid.filter.config.ConfigFilter;
|
||||
import com.alibaba.druid.filter.config.ConfigTools;
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.druid.util.JdbcUtils;
|
||||
|
||||
public class ConfigFilterTest1 extends TestCase {
|
||||
private DruidDataSource dataSource;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
dataSource = new DruidDataSource();
|
||||
dataSource.setUrl("jdbc:mock:xxx");
|
||||
dataSource.setFilters("config");
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
JdbcUtils.close(dataSource);
|
||||
}
|
||||
|
||||
public void test_decrypt() throws Exception {
|
||||
String plainPassword = "abcdefg1234567890";
|
||||
|
||||
dataSource.setPassword(ConfigTools.encrypt(plainPassword));
|
||||
|
||||
Assert.assertFalse(plainPassword.equals(dataSource.getPassword()));
|
||||
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_DECRYPT, "true");
|
||||
|
||||
dataSource.init();
|
||||
|
||||
Assert.assertEquals(plainPassword, dataSource.getPassword());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package com.alibaba.druid.bvt.filter.config;
|
||||
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.alibaba.druid.filter.config.ConfigFilter;
|
||||
import com.alibaba.druid.pool.DruidDataSource;
|
||||
import com.alibaba.druid.util.JdbcUtils;
|
||||
|
||||
public class ConfigFilterTest2 extends TestCase {
|
||||
|
||||
private DruidDataSource dataSource;
|
||||
|
||||
protected void setUp() throws Exception {
|
||||
dataSource = new DruidDataSource();
|
||||
dataSource.setFilters("config");
|
||||
}
|
||||
|
||||
protected void tearDown() throws Exception {
|
||||
JdbcUtils.close(dataSource);
|
||||
}
|
||||
|
||||
public void test_decrypt() throws Exception {
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_FILE, "bvt/config/config-0.properties");
|
||||
Assert.assertEquals(1, dataSource.getProxyFilters().size());
|
||||
|
||||
dataSource.init();
|
||||
|
||||
Assert.assertEquals("jdbc:mock:config-0", dataSource.getUrl());
|
||||
Assert.assertEquals(false, dataSource.isTestOnBorrow());
|
||||
Assert.assertEquals(10, dataSource.getMaxActive());
|
||||
}
|
||||
|
||||
public void test_decrypt1() throws Exception {
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_FILE, "bvt/config/config-1.properties");
|
||||
Assert.assertEquals(1, dataSource.getProxyFilters().size());
|
||||
|
||||
dataSource.init();
|
||||
|
||||
Assert.assertEquals("jdbc:mock:config-1", dataSource.getUrl());
|
||||
Assert.assertEquals(false, dataSource.isTestOnBorrow());
|
||||
Assert.assertEquals(11, dataSource.getMaxActive());
|
||||
Assert.assertEquals(3, dataSource.getProxyFilters().size());
|
||||
}
|
||||
|
||||
public void test_decrypt2() throws Exception {
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_FILE, "bvt/config/config-2.properties");
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_DECRYPT, "true");
|
||||
Assert.assertEquals(1, dataSource.getProxyFilters().size());
|
||||
|
||||
dataSource.init();
|
||||
|
||||
Assert.assertEquals("jdbc:mock:config-2", dataSource.getUrl());
|
||||
Assert.assertEquals(false, dataSource.isTestOnBorrow());
|
||||
Assert.assertEquals(12, dataSource.getMaxActive());
|
||||
Assert.assertEquals("abcdefg1234567890", dataSource.getPassword());
|
||||
}
|
||||
|
||||
public void test_decrypt3() throws Exception {
|
||||
dataSource.addConnectionProperty(ConfigFilter.CONFIG_FILE, "bvt/config/config-3.properties");
|
||||
Assert.assertEquals(1, dataSource.getProxyFilters().size());
|
||||
|
||||
dataSource.init();
|
||||
|
||||
Assert.assertEquals("jdbc:mock:config-3", dataSource.getUrl());
|
||||
Assert.assertEquals(false, dataSource.isTestOnBorrow());
|
||||
Assert.assertEquals(13, dataSource.getMaxActive());
|
||||
Assert.assertEquals("abcdefg1234567890", dataSource.getPassword());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.alibaba.druid.bvt.filter.config;
|
||||
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.alibaba.druid.filter.config.ConfigTools;
|
||||
|
||||
public class ConfigToolsTest extends TestCase {
|
||||
|
||||
public void test_0() throws Exception {
|
||||
String plainText = "abcdef";
|
||||
String cipherText = ConfigTools.encrypt(plainText);
|
||||
String decipherText = ConfigTools.decrypt(cipherText);
|
||||
|
||||
Assert.assertEquals(plainText, decipherText);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
config.decrypt=true
|
||||
url=jdbc:mock:config-3
|
||||
testOnBorrow=false
|
||||
maxActive=13
|
||||
password=ns2B+nJLNaoXgGakWqqsP6tWu8ZN25D1FncyKCTB/hNup8LW0g/66iGyrkDBHf9tgPJ8QtLz+upQSyin2g4flg==
|
||||
Reference in New Issue
Block a user