Commit 242acb80 authored by terrymanu's avatar terrymanu
Browse files

For #647: add YamlShardingRuleConfiguration test case

parent cf082b3c
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Properties;
import java.util.concurrent.ConcurrentHashMap;

@@ -60,14 +61,14 @@ public class YamlShardingRuleConfiguration {
    private Properties props = new Properties();
    
    /**
     * Get sharding rule configuration from yaml.
     * Get sharding rule configuration.
     *
     * @return sharding rule configuration from yaml
     * @return sharding rule configuration
     */
    public ShardingRuleConfiguration getShardingRuleConfiguration() {
        ShardingRuleConfiguration result = new ShardingRuleConfiguration();
        result.setDefaultDataSourceName(defaultDataSourceName);
        for (Map.Entry<String, YamlTableRuleConfiguration> entry : tables.entrySet()) {
        for (Entry<String, YamlTableRuleConfiguration> entry : tables.entrySet()) {
            YamlTableRuleConfiguration tableRuleConfig = entry.getValue();
            tableRuleConfig.setLogicTable(entry.getKey());
            result.getTableRuleConfigs().add(tableRuleConfig.build());
@@ -81,13 +82,13 @@ public class YamlShardingRuleConfiguration {
        }
        result.setDefaultKeyGeneratorClass(defaultKeyGeneratorClass);
        Collection<MasterSlaveRuleConfiguration> masterSlaveRuleConfigs = new LinkedList<>();
        for (Map.Entry<String, YamlMasterSlaveRuleConfiguration> each : masterSlaveRules.entrySet()) {
        for (Entry<String, YamlMasterSlaveRuleConfiguration> entry : masterSlaveRules.entrySet()) {
            MasterSlaveRuleConfiguration msRuleConfig = new MasterSlaveRuleConfiguration();
            msRuleConfig.setName(each.getKey());
            msRuleConfig.setMasterDataSourceName(each.getValue().getMasterDataSourceName());
            msRuleConfig.setSlaveDataSourceNames(each.getValue().getSlaveDataSourceNames());
            msRuleConfig.setLoadBalanceAlgorithmType(each.getValue().getLoadBalanceAlgorithmType());
            msRuleConfig.setLoadBalanceAlgorithmClassName(each.getValue().getLoadBalanceAlgorithmClassName());
            msRuleConfig.setName(entry.getKey());
            msRuleConfig.setMasterDataSourceName(entry.getValue().getMasterDataSourceName());
            msRuleConfig.setSlaveDataSourceNames(entry.getValue().getSlaveDataSourceNames());
            msRuleConfig.setLoadBalanceAlgorithmType(entry.getValue().getLoadBalanceAlgorithmType());
            msRuleConfig.setLoadBalanceAlgorithmClassName(entry.getValue().getLoadBalanceAlgorithmClassName());
            masterSlaveRuleConfigs.add(msRuleConfig);
        }
        result.setMasterSlaveRuleConfigs(masterSlaveRuleConfigs);
+0 −1
Original line number Diff line number Diff line
@@ -55,7 +55,6 @@ public class YamlTableRuleConfiguration {
        TableRuleConfiguration result = new TableRuleConfiguration();
        result.setLogicTable(logicTable);
        result.setActualDataNodes(actualDataNodes);
        result.setLogicTable(logicTable);
        if (null != databaseStrategy) {
            result.setDatabaseShardingStrategyConfig(databaseStrategy.build());
        }
+6 −0
Original line number Diff line number Diff line
@@ -20,6 +20,9 @@ package io.shardingjdbc.core.yaml;
import io.shardingjdbc.core.yaml.masterslave.YamlMasterSlaveConfigurationTest;
import io.shardingjdbc.core.yaml.masterslave.YamlMasterSlaveRuleConfigurationTest;
import io.shardingjdbc.core.yaml.sharding.YamlShardingConfigurationTest;
import io.shardingjdbc.core.yaml.sharding.YamlShardingRuleConfigurationTest;
import io.shardingjdbc.core.yaml.sharding.YamlShardingStrategyConfigurationTest;
import io.shardingjdbc.core.yaml.sharding.YamlTableRuleConfigurationTest;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
@@ -27,6 +30,9 @@ import org.junit.runners.Suite.SuiteClasses;
@RunWith(Suite.class)
@SuiteClasses({
        YamlShardingConfigurationTest.class, 
        YamlShardingRuleConfigurationTest.class, 
        YamlTableRuleConfigurationTest.class, 
        YamlShardingStrategyConfigurationTest.class, 
        YamlMasterSlaveConfigurationTest.class, 
        YamlMasterSlaveRuleConfigurationTest.class
})
+1 −2
Original line number Diff line number Diff line
@@ -32,8 +32,7 @@ public final class YamlMasterSlaveRuleConfigurationTest {
    
    @Test
    public void assertGetMasterSlaveRuleConfiguration() {
        MasterSlaveRuleConfiguration actual = createYamlMasterSlaveRuleConfig().getMasterSlaveRuleConfiguration();
        assertMasterSlaveRuleConfig(actual);
        assertMasterSlaveRuleConfig(createYamlMasterSlaveRuleConfig().getMasterSlaveRuleConfiguration());
    }
        
    private YamlMasterSlaveRuleConfiguration createYamlMasterSlaveRuleConfig() {
+1 −0
Original line number Diff line number Diff line
@@ -104,6 +104,7 @@ public final class YamlShardingConfigurationTest {
        assertThat(actual.getShardingRule().getTables().get("t_order").getTableStrategy().getInline().getAlgorithmExpression(), is("t_order_${order_id % 2}"));
        assertThat(actual.getShardingRule().getTables().get("t_order").getKeyGeneratorColumnName(), is("order_id"));
        assertThat(actual.getShardingRule().getTables().get("t_order").getKeyGeneratorClass(), is("io.shardingjdbc.core.keygen.DefaultKeyGenerator"));
        assertThat(actual.getShardingRule().getTables().get("t_order").getLogicIndex(), is("order_index"));
    }
    
    private void assertTOrderItem(final YamlShardingConfiguration actual) {
Loading