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

zhangyonglun 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 b3e9529  AbstractResumeBreakPointManagerTest.setUp() set 
PositionManagerMap as a TreeMap to make sure key is in order. (#6750)
b3e9529 is described below

commit b3e95295ecf7116f2376e4242e651daf9155ef03
Author: 邱鹿 Lucas <[email protected]>
AuthorDate: Mon Aug 10 16:33:04 2020 +0800

    AbstractResumeBreakPointManagerTest.setUp() set PositionManagerMap as a 
TreeMap to make sure key is in order. (#6750)
    
    Co-authored-by: qiulu3 <Lucas209910>
---
 .../AbstractResumeBreakPointManagerTest.java       | 32 ++++++++++++++++++----
 1 file changed, 27 insertions(+), 5 deletions(-)

diff --git 
a/shardingsphere-scaling/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumeBreakPointManagerTest.java
 
b/shardingsphere-scaling/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumeBreakPointManagerTest.java
index 89eeb76..766e99d 100644
--- 
a/shardingsphere-scaling/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumeBreakPointManagerTest.java
+++ 
b/shardingsphere-scaling/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/core/job/position/resume/AbstractResumeBreakPointManagerTest.java
@@ -19,17 +19,18 @@ package 
org.apache.shardingsphere.scaling.core.job.position.resume;
 
 import org.apache.shardingsphere.scaling.core.job.position.BasePositionManager;
 import org.apache.shardingsphere.scaling.core.job.position.FinishedPosition;
+import org.apache.shardingsphere.scaling.core.job.position.IncrementalPosition;
+import org.apache.shardingsphere.scaling.core.job.position.InventoryPosition;
 import 
org.apache.shardingsphere.scaling.core.job.position.InventoryPositionManager;
 import org.apache.shardingsphere.scaling.core.job.position.PlaceholderPosition;
+import org.apache.shardingsphere.scaling.core.job.position.PositionManager;
 import org.apache.shardingsphere.scaling.core.job.position.PrimaryKeyPosition;
-import org.apache.shardingsphere.scaling.core.spi.ScalingEntryLoader;
-import org.apache.shardingsphere.scaling.mysql.MySQLScalingEntry;
 import org.apache.shardingsphere.scaling.mysql.binlog.BinlogPosition;
 import org.apache.shardingsphere.scaling.utils.ReflectionUtil;
 import org.junit.Before;
 import org.junit.Test;
 
-import java.util.Map;
+import java.util.TreeMap;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
@@ -40,7 +41,7 @@ public final class AbstractResumeBreakPointManagerTest {
     
     private final String incrementalPosition = 
"{\"ds0\":{\"filename\":\"mysql-bin.000001\",\"position\":4},\"ds1\":{\"filename\":\"mysql-bin.000002\",\"position\":4}}";
     
-    private final String inventoryPosition = 
"{\"unfinished\":{\"ds0.t_order_2\":[],\"ds1.t_order_1#0\":[0,200],\"ds0.t_order_1#0\":[0,100]},\"finished\":[\"ds0.t_order_1#1\"]}";
+    private final String inventoryPosition = 
"{\"unfinished\":{\"ds0.t_order_1#0\":[0,100],\"ds0.t_order_2\":[],\"ds1.t_order_1#0\":[0,200]},\"finished\":[\"ds0.t_order_1#1\"]}";
     
     @Before
     public void setUp() throws NoSuchFieldException, IllegalAccessException {
@@ -48,7 +49,10 @@ public final class AbstractResumeBreakPointManagerTest {
         };
         resumeBreakPointManager.setDatabaseType("MySQL");
         resumeBreakPointManager.setTaskPath("/scalingTest/item-0");
-        ReflectionUtil.getFieldValueFromClass(new ScalingEntryLoader(), 
"SCALING_ENTRY_MAP", Map.class).put("MySQL", new MySQLScalingEntry());
+        
ReflectionUtil.getFieldFromClass(AbstractResumeBreakPointManager.class, 
"inventoryPositionManagerMap", true)
+                .set(resumeBreakPointManager, new TreeMap<String, 
PositionManager<InventoryPosition>>());
+        
ReflectionUtil.getFieldFromClass(AbstractResumeBreakPointManager.class, 
"incrementalPositionManagerMap", true)
+                .set(resumeBreakPointManager, new TreeMap<String, 
PositionManager<IncrementalPosition>>());
     }
     
     @Test
@@ -71,6 +75,24 @@ public final class AbstractResumeBreakPointManagerTest {
     }
     
     @Test
+    public void assertPrimaryKeyPositionJson() {
+        
resumeBreakPointManager.getInventoryPositionManagerMap().put("ds0.t_order_1#0", 
new InventoryPositionManager<>(new PrimaryKeyPosition(0L, 100L)));
+        assertThat(resumeBreakPointManager.getInventoryPositionData(), 
is("{\"unfinished\":{\"ds0.t_order_1#0\":[0,100]},\"finished\":[]}"));
+    }
+    
+    @Test
+    public void assertPlaceholderPositionJson() {
+        
resumeBreakPointManager.getInventoryPositionManagerMap().put("ds0.t_order_1#0", 
new InventoryPositionManager<>(new PlaceholderPosition()));
+        assertThat(resumeBreakPointManager.getInventoryPositionData(), 
is("{\"unfinished\":{\"ds0.t_order_1#0\":[]},\"finished\":[]}"));
+    }
+    
+    @Test
+    public void assertFinishedPositionJson() {
+        
resumeBreakPointManager.getInventoryPositionManagerMap().put("ds0.t_order_1#0", 
new InventoryPositionManager<>(new FinishedPosition()));
+        assertThat(resumeBreakPointManager.getInventoryPositionData(), 
is("{\"unfinished\":{},\"finished\":[\"ds0.t_order_1#0\"]}"));
+    }
+    
+    @Test
     public void assertGetInventoryPositionData() {
         
resumeBreakPointManager.getInventoryPositionManagerMap().put("ds0.t_order_1#0", 
new InventoryPositionManager<>(new PrimaryKeyPosition(0L, 100L)));
         
resumeBreakPointManager.getInventoryPositionManagerMap().put("ds0.t_order_1#1", 
new InventoryPositionManager<>(new FinishedPosition()));

Reply via email to