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 5ad256e  Add unit test for SchemaChangedListener (#6826)
5ad256e is described below

commit 5ad256e46d44f52e0f87250dae36a0363f12609b
Author: Haoran Meng <[email protected]>
AuthorDate: Thu Aug 13 18:37:16 2020 +0800

    Add unit test for SchemaChangedListener (#6826)
---
 .../config/listener/SchemaChangedListenerTest.java | 31 ++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git 
a/shardingsphere-control-panel/shardingsphere-orchestration/shardingsphere-orchestration-core/shardingsphere-orchestration-core-config/src/test/java/org/apache/shardingsphere/orchestration/core/config/listener/SchemaChangedListenerTest.java
 
b/shardingsphere-control-panel/shardingsphere-orchestration/shardingsphere-orchestration-core/shardingsphere-orchestration-core-config/src/test/java/org/apache/shardingsphere/orchestration/core/config/listener/SchemaChangedListenerTest.java
index c863213..81953d0 100644
--- 
a/shardingsphere-control-panel/shardingsphere-orchestration/shardingsphere-orchestration-core/shardingsphere-orchestration-core-config/src/test/java/org/apache/shardingsphere/orchestration/core/config/listener/SchemaChangedListenerTest.java
+++ 
b/shardingsphere-control-panel/shardingsphere-orchestration/shardingsphere-orchestration-core/shardingsphere-orchestration-core-config/src/test/java/org/apache/shardingsphere/orchestration/core/config/listener/SchemaChangedListenerTest.java
@@ -239,6 +239,37 @@ public final class SchemaChangedListenerTest {
         assertThat(((SchemaAddedEvent) 
actual).getRuleConfigurations().iterator().next(), 
instanceOf(MasterSlaveRuleConfiguration.class));
     }
     
+    @Test
+    public void assertCreateSchemaNamesUpdatedEventForAdd() {
+        DataChangedEvent dataChangedEvent = new 
DataChangedEvent("/test/config/schema", 
"sharding_db,masterslave_db,encrypt_db,shadow_db", ChangedType.UPDATED);
+        OrchestrationEvent actual = 
schemaChangedListener.createOrchestrationEvent(dataChangedEvent);
+        assertThat(actual, instanceOf(SchemaAddedEvent.class));
+        assertThat(((SchemaAddedEvent) actual).getShardingSchemaName(), 
is("shadow_db"));
+    }
+    
+    @Test
+    public void assertCreateSchemaNamesUpdatedEventForDelete() {
+        DataChangedEvent dataChangedEvent = new 
DataChangedEvent("/test/config/schema", "sharding_db,masterslave_db", 
ChangedType.UPDATED);
+        OrchestrationEvent actual = 
schemaChangedListener.createOrchestrationEvent(dataChangedEvent);
+        assertThat(actual, instanceOf(SchemaDeletedEvent.class));
+        assertThat(((SchemaDeletedEvent) actual).getShardingSchemaName(), 
is("encrypt_db"));
+    }
+    
+    @Test
+    public void assertCreateSchemaNamesUpdatedEventForIgnore() {
+        DataChangedEvent dataChangedEvent = new 
DataChangedEvent("/test/config/schema", 
"sharding_db,masterslave_db,encrypt_db", ChangedType.UPDATED);
+        OrchestrationEvent actual = 
schemaChangedListener.createOrchestrationEvent(dataChangedEvent);
+        assertThat(actual, instanceOf(IgnoredOrchestrationEvent.class));
+    }
+    
+    @Test
+    public void assertCreateSchemaNameAddEvent() {
+        DataChangedEvent dataChangedEvent = new 
DataChangedEvent("/test/config/schema/shadow_db", "", ChangedType.ADDED);
+        OrchestrationEvent actual = 
schemaChangedListener.createOrchestrationEvent(dataChangedEvent);
+        assertThat(actual, instanceOf(SchemaAddedEvent.class));
+        assertThat(((SchemaAddedEvent) actual).getShardingSchemaName(), 
is("shadow_db"));
+    }
+    
     @SneakyThrows
     private String readYAML(final String yamlFile) {
         return 
Files.readAllLines(Paths.get(ClassLoader.getSystemResource(yamlFile).toURI())).stream().map(each
 -> each + System.lineSeparator()).collect(Collectors.joining());

Reply via email to