You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2020/09/30 15:38:26 UTC
[shardingsphere] branch master updated: ADD RDL unit test for
springBoot (#7672)
This is an automated email from the ASF dual-hosted git repository.
zhangliang 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 848a483 ADD RDL unit test for springBoot (#7672)
848a483 is described below
commit 848a483251f43a9323b8d70a807ac0f2a0f8a7ad
Author: Juan Pan(Trista) <pa...@apache.org>
AuthorDate: Wed Sep 30 23:38:15 2020 +0800
ADD RDL unit test for springBoot (#7672)
---
.../sharding/spring/boot/ShardingSpringBootStarterTest.java | 8 ++++++++
.../src/test/resources/application-sharding.properties | 6 ++++++
2 files changed, 14 insertions(+)
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/java/org/apache/shardingsphere/sharding/spring/boot/ShardingSpringBootStarterTest.java b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/java/org/apache/shardingsphere/sharding/spring/boot/ShardingSpringBootStarterTest.java
index 3186ec5..59a0cfd 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/java/org/apache/shardingsphere/sharding/spring/boot/ShardingSpringBootStarterTest.java
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/java/org/apache/shardingsphere/sharding/spring/boot/ShardingSpringBootStarterTest.java
@@ -21,6 +21,7 @@ import com.google.common.collect.Lists;
import org.apache.shardingsphere.sharding.algorithm.config.AlgorithmProvidedShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.algorithm.keygen.SnowflakeKeyGenerateAlgorithm;
import org.apache.shardingsphere.sharding.algorithm.sharding.inline.InlineShardingAlgorithm;
+import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.strategy.sharding.StandardShardingStrategyConfiguration;
import org.junit.Test;
@@ -83,6 +84,7 @@ public class ShardingSpringBootStarterTest {
private void assertShardingConfigurationTables() {
assertThat(shardingRuleConfiguration.getTables().size(), is(2));
+ assertThat(shardingRuleConfiguration.getAutoTables().size(), is(1));
List<ShardingTableRuleConfiguration> shardingTableRuleConfigurationList = Lists.newArrayList(shardingRuleConfiguration.getTables());
assertThat(shardingTableRuleConfigurationList.get(0).getLogicTable(), is("t_order"));
assertThat(shardingTableRuleConfigurationList.get(0).getActualDataNodes(), is("ds_$->{0..1}.t_order_$->{0..1}"));
@@ -98,6 +100,12 @@ public class ShardingSpringBootStarterTest {
assertThat(shardingTableRuleConfigurationList.get(1).getTableShardingStrategy().getShardingAlgorithmName(), is("orderItemTableShardingAlgorithm"));
assertThat(shardingTableRuleConfigurationList.get(1).getKeyGenerateStrategy().getColumn(), is("order_item_id"));
assertThat(shardingTableRuleConfigurationList.get(1).getKeyGenerateStrategy().getKeyGeneratorName(), is("keyGenerator"));
+ List<ShardingAutoTableRuleConfiguration> autoShardingTableRuleConfigurationList = Lists.newArrayList(shardingRuleConfiguration.getAutoTables());
+ assertThat(autoShardingTableRuleConfigurationList.get(0).getLogicTable(), is("t_order_auto"));
+ assertThat(autoShardingTableRuleConfigurationList.get(0).getActualDataSources(), is("ds0, ds1"));
+ assertThat(autoShardingTableRuleConfigurationList.get(0).getShardingStrategy(), instanceOf(StandardShardingStrategyConfiguration.class));
+ assertThat(((StandardShardingStrategyConfiguration) autoShardingTableRuleConfigurationList.get(0).getShardingStrategy()).getShardingColumn(), is("order_id"));
+ assertThat(autoShardingTableRuleConfigurationList.get(0).getShardingStrategy().getShardingAlgorithmName(), is("mod"));
}
private void assertShardingConfigurationBindingTableGroups() {
diff --git a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/resources/application-sharding.properties b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/resources/application-sharding.properties
index c95ae15..86e3498 100644
--- a/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/resources/application-sharding.properties
+++ b/shardingsphere-features/shardingsphere-sharding/shardingsphere-sharding-spring/shardingsphere-sharding-spring-boot-starter/src/test/resources/application-sharding.properties
@@ -46,5 +46,11 @@ spring.shardingsphere.rules.sharding.tables.t_order_item.table-strategy.standard
spring.shardingsphere.rules.sharding.tables.t_order_item.key-generate-strategy.column=order_item_id
spring.shardingsphere.rules.sharding.tables.t_order_item.key-generate-strategy.key-generator-name=keyGenerator
+spring.shardingsphere.rules.sharding.auto-tables.t_order_auto.actual-data-sources=ds0, ds1
+
+spring.shardingsphere.rules.sharding.auto-tables.t_order_auto.sharding-strategy.standard.sharding-column=order_id
+spring.shardingsphere.rules.sharding.auto-tables.t_order_auto.sharding-strategy.standard.sharding-algorithm-name=mod
+
+
spring.shardingsphere.rules.sharding.binding-tables=t_order,t_order_item
spring.shardingsphere.rules.sharding.broadcast-tables=t_config