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 2051ae7 add test for
assertGetAllInstanceDataSourceNamesForShardingRule (#6721)
2051ae7 is described below
commit 2051ae7ca59ff68a1dcb1a84e1da3af417c4bfd7
Author: harvies <[email protected]>
AuthorDate: Sun Aug 9 00:23:22 2020 +0800
add test for assertGetAllInstanceDataSourceNamesForShardingRule (#6721)
---
.../metadata/datasource/DataSourceMetasTest.java | 46 +++++++++++++++-------
1 file changed, 32 insertions(+), 14 deletions(-)
diff --git
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/datasource/DataSourceMetasTest.java
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/datasource/DataSourceMetasTest.java
index 8832d63..7205771 100644
---
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/datasource/DataSourceMetasTest.java
+++
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/datasource/DataSourceMetasTest.java
@@ -19,41 +19,59 @@ package org.apache.shardingsphere.infra.metadata.datasource;
import org.apache.shardingsphere.infra.config.DatabaseAccessConfiguration;
import org.apache.shardingsphere.infra.database.type.DatabaseTypes;
-import org.junit.Before;
import org.junit.Test;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertNull;
public final class DataSourceMetasTest {
-
- private DataSourceMetas dataSourceMetas;
-
- @Before
- public void setUp() {
+
+ @Test
+ public void
assertGetAllInstanceDataSourceNamesForShardingRuleByDifferentDataSource() {
Map<String, DatabaseAccessConfiguration>
databaseAccessConfigurationMap = new HashMap<>(2, 1);
databaseAccessConfigurationMap.put("ds_0", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_0", "test", null));
- databaseAccessConfigurationMap.put("ds_1", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_1", "test", null));
- dataSourceMetas = new
DataSourceMetas(DatabaseTypes.getActualDatabaseType("MySQL"),
databaseAccessConfigurationMap);
+ databaseAccessConfigurationMap.put("ds_1", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3307/db_1", "test", null));
+ DataSourceMetas dataSourceMetas = new
DataSourceMetas(DatabaseTypes.getActualDatabaseType("MySQL"),
databaseAccessConfigurationMap);
+ Collection<String> allInstanceDataSourceNames =
dataSourceMetas.getAllInstanceDataSourceNames();
+ assertNotNull(allInstanceDataSourceNames);
+ assertThat(allInstanceDataSourceNames.size(), is(2));
+ assertTrue(allInstanceDataSourceNames.contains("ds_0") &&
allInstanceDataSourceNames.contains("ds_1"));
}
-
+
@Test
- public void assertGetAllInstanceDataSourceNamesForShardingRule() {
- assertNotNull(dataSourceMetas.getAllInstanceDataSourceNames());
+ public void
assertGetAllInstanceDataSourceNamesForShardingRuleBySameDataSource() {
+ Map<String, DatabaseAccessConfiguration>
databaseAccessConfigurationMap = new HashMap<>(2, 1);
+ databaseAccessConfigurationMap.put("ds_0", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_0", "test", null));
+ databaseAccessConfigurationMap.put("ds_1", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_1", "test", null));
+ DataSourceMetas dataSourceMetas = new
DataSourceMetas(DatabaseTypes.getActualDatabaseType("MySQL"),
databaseAccessConfigurationMap);
+ Collection<String> allInstanceDataSourceNames =
dataSourceMetas.getAllInstanceDataSourceNames();
+ assertNotNull(allInstanceDataSourceNames);
+ assertThat(allInstanceDataSourceNames.size(), is(1));
+ assertTrue(allInstanceDataSourceNames.contains("ds_0") ||
allInstanceDataSourceNames.contains("ds_1"));
}
-
+
@Test
public void assertGetActualCatalogForShardingRule() {
+ Map<String, DatabaseAccessConfiguration>
databaseAccessConfigurationMap = new HashMap<>(2, 1);
+ databaseAccessConfigurationMap.put("ds_0", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_0", "test", null));
+ databaseAccessConfigurationMap.put("ds_1", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_1", "test", null));
+ DataSourceMetas dataSourceMetas = new
DataSourceMetas(DatabaseTypes.getActualDatabaseType("MySQL"),
databaseAccessConfigurationMap);
assertThat(dataSourceMetas.getDataSourceMetaData("ds_0").getCatalog(),
is("db_0"));
}
-
+
@Test
public void assertGetActualSchemaNameForShardingRuleForMysql() {
+ Map<String, DatabaseAccessConfiguration>
databaseAccessConfigurationMap = new HashMap<>(2, 1);
+ databaseAccessConfigurationMap.put("ds_0", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_0", "test", null));
+ databaseAccessConfigurationMap.put("ds_1", new
DatabaseAccessConfiguration("jdbc:mysql://127.0.0.1:3306/db_1", "test", null));
+ DataSourceMetas dataSourceMetas = new
DataSourceMetas(DatabaseTypes.getActualDatabaseType("MySQL"),
databaseAccessConfigurationMap);
assertNull(dataSourceMetas.getDataSourceMetaData("ds_0").getSchema());
}
}