This is an automated email from the ASF dual-hosted git repository.

sunnianjun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new ddd60524ce7 Use PropertiesBuilder in db-discovery module (#23266)
ddd60524ce7 is described below

commit ddd60524ce775fcb04eaf4562d96e0c01e952ba3
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Jan 2 22:50:00 2023 +0800

    Use PropertiesBuilder in db-discovery module (#23266)
---
 features/db-discovery/distsql/handler/pom.xml      |  7 +++++++
 ...atabaseDiscoveryRuleStatementConverterTest.java | 14 +++++--------
 .../DatabaseDiscoveryHeartbeatResultSetTest.java   |  9 ++++-----
 .../query/DatabaseDiscoveryTypeResultSetTest.java  | 14 ++++++-------
 ...baseDiscoveryHeartbeatStatementUpdaterTest.java | 23 +++++++++-------------
 ...overyProviderAlgorithmStatementUpdaterTest.java | 18 ++++++++---------
 ...baseDiscoveryHeartbeatStatementUpdaterTest.java | 23 +++++++++-------------
 features/db-discovery/provider/mysql/pom.xml       |  6 ++++++
 .../MGRDatabaseDiscoveryProviderAlgorithmTest.java |  7 ++++---
 ...tionDatabaseDiscoveryProviderAlgorithmTest.java |  7 +++----
 10 files changed, 61 insertions(+), 67 deletions(-)

diff --git a/features/db-discovery/distsql/handler/pom.xml 
b/features/db-discovery/distsql/handler/pom.xml
index b38551cd461..bf915664412 100644
--- a/features/db-discovery/distsql/handler/pom.xml
+++ b/features/db-discovery/distsql/handler/pom.xml
@@ -49,6 +49,13 @@
             <version>${project.version}</version>
         </dependency>
         
+        <dependency>
+            <groupId>org.apache.shardingsphere</groupId>
+            <artifactId>shardingsphere-test-util</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+        
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/converter/DatabaseDiscoveryRuleStatementConverterTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/converter/DatabaseDiscoveryRuleStatementConverterTest.java
index db68ba80da8..1fddf4f567a 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/converter/DatabaseDiscoveryRuleStatementConverterTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/converter/DatabaseDiscoveryRuleStatementConverterTest.java
@@ -22,6 +22,8 @@ import 
org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryDa
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.segment.AbstractDatabaseDiscoverySegment;
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.segment.DatabaseDiscoveryDefinitionSegment;
 import org.apache.shardingsphere.distsql.parser.segment.AlgorithmSegment;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 
 import java.util.Arrays;
@@ -50,15 +52,9 @@ public final class 
DatabaseDiscoveryRuleStatementConverterTest {
     }
     
     private Collection<AbstractDatabaseDiscoverySegment> 
createDatabaseDiscoveryRuleSegments() {
-        Properties props = createProperties();
-        DatabaseDiscoveryDefinitionSegment databaseDiscoveryDefinitionSegment =
-                new DatabaseDiscoveryDefinitionSegment("definition", 
Arrays.asList("resource0", "resource1"), new AlgorithmSegment("MySQL.MGR", 
props), props);
+        Properties props = PropertiesBuilder.build(new Property("key", 
"value"));
+        DatabaseDiscoveryDefinitionSegment databaseDiscoveryDefinitionSegment 
= new DatabaseDiscoveryDefinitionSegment(
+                "definition", Arrays.asList("resource0", "resource1"), new 
AlgorithmSegment("MySQL.MGR", props), props);
         return Collections.singletonList(databaseDiscoveryDefinitionSegment);
     }
-    
-    private Properties createProperties() {
-        Properties result = new Properties();
-        result.put("key", "value");
-        return result;
-    }
 }
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatResultSetTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatResultSetTest.java
index bfe27894ac2..5084377560a 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatResultSetTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryHeartbeatResultSetTest.java
@@ -22,10 +22,12 @@ import 
org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryDa
 import 
org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryHeartBeatConfiguration;
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDatabaseDiscoveryRulesStatement;
 import org.apache.shardingsphere.dbdiscovery.rule.DatabaseDiscoveryRule;
-import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
 import 
org.apache.shardingsphere.distsql.handler.resultset.DatabaseDistSQLResultSet;
+import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import 
org.apache.shardingsphere.infra.metadata.database.rule.ShardingSphereRuleMetaData;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 
 import java.util.ArrayList;
@@ -34,7 +36,6 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
-import java.util.Properties;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -65,9 +66,7 @@ public final class DatabaseDiscoveryHeartbeatResultSetTest {
     private RuleConfiguration createRuleConfiguration() {
         DatabaseDiscoveryDataSourceRuleConfiguration 
databaseDiscoveryDataSourceRuleConfig = new 
DatabaseDiscoveryDataSourceRuleConfiguration("ms_group", Arrays.asList("ds_0", 
"ds_1"),
                 "ms-heartbeat", "test");
-        Properties discoveryTypeProps = new Properties();
-        discoveryTypeProps.put("type_key", "type_value");
-        DatabaseDiscoveryHeartBeatConfiguration shardingSphereAlgorithmConfig 
= new DatabaseDiscoveryHeartBeatConfiguration(discoveryTypeProps);
+        DatabaseDiscoveryHeartBeatConfiguration shardingSphereAlgorithmConfig 
= new DatabaseDiscoveryHeartBeatConfiguration(PropertiesBuilder.build(new 
Property("type_key", "type_value")));
         Map<String, DatabaseDiscoveryHeartBeatConfiguration> discoverHeartbeat 
= Collections.singletonMap("test_name", shardingSphereAlgorithmConfig);
         return new 
DatabaseDiscoveryRuleConfiguration(Collections.singleton(databaseDiscoveryDataSourceRuleConfig),
 discoverHeartbeat, Collections.emptyMap());
     }
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeResultSetTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeResultSetTest.java
index d4e83c7632c..34f1c508997 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeResultSetTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/query/DatabaseDiscoveryTypeResultSetTest.java
@@ -21,11 +21,13 @@ import 
org.apache.shardingsphere.dbdiscovery.api.config.DatabaseDiscoveryRuleCon
 import 
org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryDataSourceRuleConfiguration;
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.ShowDatabaseDiscoveryRulesStatement;
 import org.apache.shardingsphere.dbdiscovery.rule.DatabaseDiscoveryRule;
+import 
org.apache.shardingsphere.distsql.handler.resultset.DatabaseDistSQLResultSet;
 import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
 import org.apache.shardingsphere.infra.config.rule.RuleConfiguration;
-import 
org.apache.shardingsphere.distsql.handler.resultset.DatabaseDistSQLResultSet;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import 
org.apache.shardingsphere.infra.metadata.database.rule.ShardingSphereRuleMetaData;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 
 import java.util.ArrayList;
@@ -34,7 +36,6 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
-import java.util.Properties;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -64,12 +65,9 @@ public final class DatabaseDiscoveryTypeResultSetTest {
     }
     
     private RuleConfiguration createRuleConfiguration() {
-        DatabaseDiscoveryDataSourceRuleConfiguration 
databaseDiscoveryDataSourceRuleConfig = new 
DatabaseDiscoveryDataSourceRuleConfiguration("ms_group", Arrays.asList("ds_0", 
"ds_1"),
-                "ms-heartbeat", "test");
-        Properties discoveryTypeProps = new Properties();
-        discoveryTypeProps.put("type_key", "type_value");
-        AlgorithmConfiguration shardingSphereAlgorithmConfig = new 
AlgorithmConfiguration("MySQL.MGR", discoveryTypeProps);
+        DatabaseDiscoveryDataSourceRuleConfiguration dataSourceRuleConfig = 
new DatabaseDiscoveryDataSourceRuleConfiguration("ms_group", 
Arrays.asList("ds_0", "ds_1"), "ms-heartbeat", "test");
+        AlgorithmConfiguration shardingSphereAlgorithmConfig = new 
AlgorithmConfiguration("MySQL.MGR", PropertiesBuilder.build(new 
Property("type_key", "type_value")));
         Map<String, AlgorithmConfiguration> discoverTypes = 
Collections.singletonMap("test_name", shardingSphereAlgorithmConfig);
-        return new 
DatabaseDiscoveryRuleConfiguration(Collections.singleton(databaseDiscoveryDataSourceRuleConfig),
 Collections.emptyMap(), discoverTypes);
+        return new 
DatabaseDiscoveryRuleConfiguration(Collections.singleton(dataSourceRuleConfig), 
Collections.emptyMap(), discoverTypes);
     }
 }
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
index a6e4cacd280..3ab0cf51be2 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
@@ -23,6 +23,8 @@ import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.AlterDatab
 import 
org.apache.shardingsphere.distsql.handler.exception.rule.DuplicateRuleException;
 import 
org.apache.shardingsphere.distsql.handler.exception.rule.MissingRequiredRuleException;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
@@ -33,7 +35,6 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.LinkedHashMap;
 import java.util.LinkedList;
-import java.util.Properties;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -48,34 +49,28 @@ public final class 
AlterDatabaseDiscoveryHeartbeatStatementUpdaterTest {
     
     @Test(expected = DuplicateRuleException.class)
     public void assertCheckSQLStatementWithDuplicateHeartbeatNames() {
-        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
-        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
+        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
+        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
         updater.checkSQLStatement(database, new 
AlterDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
                 new 
DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), 
Collections.emptyMap(), Collections.emptyMap()));
     }
     
     @Test(expected = MissingRequiredRuleException.class)
     public void assertCheckSQLStatementWithNotExistDiscoveryHeartbeatName() {
-        DatabaseDiscoveryHeartbeatSegment segment = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
+        DatabaseDiscoveryHeartbeatSegment segment = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
         DatabaseDiscoveryRuleConfiguration config = new 
DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), 
Collections.singletonMap("heartbeat1", null), Collections.emptyMap());
         updater.checkSQLStatement(database, new 
AlterDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), 
config);
     }
     
     @Test
     public void assertUpdate() {
-        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_1", createProperties("key_1", 
"value_1"));
-        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_2", createProperties("key_2", 
"value_2"));
+        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_1", PropertiesBuilder.build(new 
Property("key_1", "value_1")));
+        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_2", PropertiesBuilder.build(new 
Property("key_2", "value_2")));
         DatabaseDiscoveryRuleConfiguration ruleConfig = 
updater.buildToBeAlteredRuleConfiguration(new 
AlterDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)));
         DatabaseDiscoveryRuleConfiguration currentConfig = new 
DatabaseDiscoveryRuleConfiguration(new LinkedList<>(), new LinkedHashMap<>(), 
new LinkedHashMap<>());
         updater.updateCurrentRuleConfiguration(currentConfig, ruleConfig);
         assertThat(currentConfig.getDiscoveryHeartbeats().size(), is(2));
-        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_1").getProps(),
 is(createProperties("key_1", "value_1")));
-        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_2").getProps(),
 is(createProperties("key_2", "value_2")));
-    }
-    
-    private Properties createProperties(final String key, final String value) {
-        Properties result = new Properties();
-        result.put(key, value);
-        return result;
+        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_1").getProps(),
 is(PropertiesBuilder.build(new Property("key_1", "value_1"))));
+        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_2").getProps(),
 is(PropertiesBuilder.build(new Property("key_2", "value_2"))));
     }
 }
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
index f7cb688a2d3..c8b5618e2cc 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest.java
@@ -21,12 +21,14 @@ import 
org.apache.shardingsphere.dbdiscovery.api.config.DatabaseDiscoveryRuleCon
 import 
org.apache.shardingsphere.dbdiscovery.api.config.rule.DatabaseDiscoveryDataSourceRuleConfiguration;
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.segment.DatabaseDiscoveryProviderAlgorithmSegment;
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.AlterDatabaseDiscoveryTypeStatement;
-import org.apache.shardingsphere.distsql.parser.segment.AlgorithmSegment;
-import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
-import 
org.apache.shardingsphere.distsql.handler.exception.rule.DuplicateRuleException;
 import 
org.apache.shardingsphere.distsql.handler.exception.algorithm.InvalidAlgorithmConfigurationException;
+import 
org.apache.shardingsphere.distsql.handler.exception.rule.DuplicateRuleException;
 import 
org.apache.shardingsphere.distsql.handler.exception.rule.MissingRequiredRuleException;
+import org.apache.shardingsphere.distsql.parser.segment.AlgorithmSegment;
+import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
@@ -83,14 +85,10 @@ public final class 
AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
     
     @Test
     public void assertBuildAndUpdate() {
-        Properties currentProps = new Properties();
-        currentProps.put("key", "value");
         DatabaseDiscoveryRuleConfiguration currentRuleConfig = new 
DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), 
Collections.emptyMap(),
-                Collections.singletonMap("discovery_type", new 
AlgorithmConfiguration("DISTSQL.FIXTURE", currentProps)));
-        Properties props = new Properties();
-        props.put("key", "value_1");
+                Collections.singletonMap("discovery_type", new 
AlgorithmConfiguration("DISTSQL.FIXTURE", PropertiesBuilder.build(new 
Property("key", "foo_value")))));
         Set<DatabaseDiscoveryProviderAlgorithmSegment> algorithmSegments = 
Collections.singleton(
-                new 
DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new 
AlgorithmSegment("DISTSQL.FIXTURE", props)));
+                new 
DatabaseDiscoveryProviderAlgorithmSegment("discovery_type", new 
AlgorithmSegment("DISTSQL.FIXTURE", PropertiesBuilder.build(new Property("key", 
"bar_value")))));
         updater.checkSQLStatement(database, new 
AlterDatabaseDiscoveryTypeStatement(algorithmSegments), currentRuleConfig);
         DatabaseDiscoveryRuleConfiguration databaseDiscoveryRuleConfig =
                 (DatabaseDiscoveryRuleConfiguration) 
updater.buildToBeAlteredRuleConfiguration(new 
AlterDatabaseDiscoveryTypeStatement(algorithmSegments));
@@ -98,6 +96,6 @@ public final class 
AlterDatabaseDiscoveryProviderAlgorithmStatementUpdaterTest {
         updater.updateCurrentRuleConfiguration(currentConfig, 
databaseDiscoveryRuleConfig);
         assertThat(currentConfig.getDiscoveryTypes().size(), is(1));
         
assertThat(currentConfig.getDiscoveryTypes().get("discovery_type").getType(), 
is("DISTSQL.FIXTURE"));
-        
assertThat(currentConfig.getDiscoveryTypes().get("discovery_type").getProps().getProperty("key"),
 is("value_1"));
+        
assertThat(currentConfig.getDiscoveryTypes().get("discovery_type").getProps().getProperty("key"),
 is("bar_value"));
     }
 }
diff --git 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
index 88e280009dc..0ad9057255c 100644
--- 
a/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
+++ 
b/features/db-discovery/distsql/handler/src/test/java/org/apache/shardingsphere/dbdiscovery/distsql/handler/update/CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest.java
@@ -22,6 +22,8 @@ import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.segment.DatabaseDisc
 import 
org.apache.shardingsphere.dbdiscovery.distsql.parser.statement.CreateDatabaseDiscoveryHeartbeatStatement;
 import 
org.apache.shardingsphere.distsql.handler.exception.rule.DuplicateRuleException;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.Answers;
@@ -32,7 +34,6 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.LinkedHashMap;
 import java.util.LinkedList;
-import java.util.Properties;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -47,34 +48,28 @@ public final class 
CreateDatabaseDiscoveryHeartbeatStatementUpdaterTest {
     
     @Test(expected = DuplicateRuleException.class)
     public void assertCheckSQLStatementWithDuplicateHeartbeatNames() {
-        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
-        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
+        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
+        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
         updater.checkSQLStatement(database, new 
CreateDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)),
                 new 
DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), 
Collections.emptyMap(), Collections.emptyMap()));
     }
     
     @Test(expected = DuplicateRuleException.class)
     public void assertCheckSQLStatementWithExistDiscoveryHeartbeatName() {
-        DatabaseDiscoveryHeartbeatSegment segment = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", createProperties("key", 
"value"));
+        DatabaseDiscoveryHeartbeatSegment segment = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat", PropertiesBuilder.build(new 
Property("key", "value")));
         DatabaseDiscoveryRuleConfiguration ruleConfig = new 
DatabaseDiscoveryRuleConfiguration(Collections.emptyList(), 
Collections.singletonMap("heartbeat", null), Collections.emptyMap());
         updater.checkSQLStatement(database, new 
CreateDatabaseDiscoveryHeartbeatStatement(Collections.singleton(segment)), 
ruleConfig);
     }
     
     @Test
     public void assertUpdate() {
-        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_1", createProperties("key_1", 
"value_1"));
-        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_2", createProperties("key_2", 
"value_2"));
+        DatabaseDiscoveryHeartbeatSegment segment1 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_1", PropertiesBuilder.build(new 
Property("key_1", "value_1")));
+        DatabaseDiscoveryHeartbeatSegment segment2 = new 
DatabaseDiscoveryHeartbeatSegment("heartbeat_2", PropertiesBuilder.build(new 
Property("key_2", "value_2")));
         DatabaseDiscoveryRuleConfiguration currentConfig = new 
DatabaseDiscoveryRuleConfiguration(new LinkedList<>(), new LinkedHashMap<>(), 
new LinkedHashMap<>());
         DatabaseDiscoveryRuleConfiguration ruleConfig = 
updater.buildToBeCreatedRuleConfiguration(currentConfig, new 
CreateDatabaseDiscoveryHeartbeatStatement(Arrays.asList(segment1, segment2)));
         updater.updateCurrentRuleConfiguration(currentConfig, ruleConfig);
         assertThat(currentConfig.getDiscoveryHeartbeats().size(), is(2));
-        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_1").getProps(),
 is(createProperties("key_1", "value_1")));
-        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_2").getProps(),
 is(createProperties("key_2", "value_2")));
-    }
-    
-    private Properties createProperties(final String key, final String value) {
-        Properties result = new Properties();
-        result.put(key, value);
-        return result;
+        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_1").getProps(),
 is(PropertiesBuilder.build(new Property("key_1", "value_1"))));
+        
assertThat(currentConfig.getDiscoveryHeartbeats().get("heartbeat_2").getProps(),
 is(PropertiesBuilder.build(new Property("key_2", "value_2"))));
     }
 }
diff --git a/features/db-discovery/provider/mysql/pom.xml 
b/features/db-discovery/provider/mysql/pom.xml
index 461416028f0..2781d8b0ce9 100644
--- a/features/db-discovery/provider/mysql/pom.xml
+++ b/features/db-discovery/provider/mysql/pom.xml
@@ -39,6 +39,12 @@
             <version>${project.version}</version>
         </dependency>
         
+        <dependency>
+            <groupId>org.apache.shardingsphere</groupId>
+            <artifactId>shardingsphere-test-util</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
             <artifactId>shardingsphere-test-fixture-jdbc</artifactId>
diff --git 
a/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MGRDatabaseDiscoveryProviderAlgorithmTest.java
 
b/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MGRDatabaseDiscoveryProviderAlgorithmTest.java
index c20571e190c..e9b165fa201 100644
--- 
a/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MGRDatabaseDiscoveryProviderAlgorithmTest.java
+++ 
b/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MGRDatabaseDiscoveryProviderAlgorithmTest.java
@@ -21,6 +21,8 @@ import 
org.apache.shardingsphere.dbdiscovery.spi.DatabaseDiscoveryProviderAlgori
 import org.apache.shardingsphere.dbdiscovery.spi.ReplicaDataSourceStatus;
 import 
org.apache.shardingsphere.infra.algorithm.ShardingSphereAlgorithmFactory;
 import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 
 import javax.sql.DataSource;
@@ -42,9 +44,8 @@ public final class MGRDatabaseDiscoveryProviderAlgorithmTest {
     
     @Test
     public void assertCheckEnvironment() throws SQLException {
-        Properties props = new Properties();
-        props.setProperty("group-name", "foo_group");
-        DatabaseDiscoveryProviderAlgorithm actual = 
ShardingSphereAlgorithmFactory.createAlgorithm(new 
AlgorithmConfiguration("MySQL.MGR", props), 
DatabaseDiscoveryProviderAlgorithm.class);
+        DatabaseDiscoveryProviderAlgorithm actual = 
ShardingSphereAlgorithmFactory.createAlgorithm(
+                new AlgorithmConfiguration("MySQL.MGR", 
PropertiesBuilder.build(new Property("group-name", "foo_group"))), 
DatabaseDiscoveryProviderAlgorithm.class);
         actual.checkEnvironment("foo_db", 
Collections.singletonList(mockEnvironmentAvailableDataSource()));
     }
     
diff --git 
a/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithmTest.java
 
b/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithmTest.java
index 826e2190927..b90eb9271a0 100644
--- 
a/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithmTest.java
+++ 
b/features/db-discovery/provider/mysql/src/test/java/org/apache/shardingsphere/dbdiscovery/mysql/type/MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithmTest.java
@@ -20,6 +20,8 @@ package org.apache.shardingsphere.dbdiscovery.mysql.type;
 import 
org.apache.shardingsphere.dbdiscovery.spi.DatabaseDiscoveryProviderAlgorithm;
 import org.apache.shardingsphere.dbdiscovery.spi.ReplicaDataSourceStatus;
 import org.apache.shardingsphere.test.fixture.jdbc.MockedDataSource;
+import org.apache.shardingsphere.test.util.PropertiesBuilder;
+import org.apache.shardingsphere.test.util.PropertiesBuilder.Property;
 import org.junit.Test;
 
 import javax.sql.DataSource;
@@ -27,7 +29,6 @@ import java.sql.Connection;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.Collections;
-import java.util.Properties;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
@@ -65,10 +66,8 @@ public final class 
MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithmTest
     
     @Test
     public void assertLoadReplicaStatus() throws SQLException {
-        Properties props = new Properties();
-        props.setProperty("delay-milliseconds-threshold", "15000");
         DatabaseDiscoveryProviderAlgorithm algorithm = new 
MySQLNormalReplicationDatabaseDiscoveryProviderAlgorithm();
-        algorithm.init(props);
+        algorithm.init(PropertiesBuilder.build(new 
Property("delay-milliseconds-threshold", "15000")));
         DataSource dataSource = mockDataSourceForReplicaStatus();
         ReplicaDataSourceStatus actual = 
algorithm.loadReplicaStatus(dataSource);
         assertTrue(actual.isOnline());

Reply via email to