From b16621c0b49d0c420baa0e0fdf17fa7ef2683964 Mon Sep 17 00:00:00 2001 From: "everywhere.z" Date: Fri, 8 Jul 2022 23:32:09 +0800 Subject: [PATCH] =?UTF-8?q?bug=20#I5G9L0=20=E5=9C=A8=E7=9B=B8=E5=90=8C?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=89=A7=E8=A1=8C=E5=AE=8C=E4=B9=8B=E5=90=8E?= =?UTF-8?q?=EF=BC=8C=E5=8F=96steps=E7=9A=84=E6=97=B6=E5=80=99=EF=BC=8C?= =?UTF-8?q?=E5=AD=98=E5=9C=A8=E6=8A=A5=E9=94=99=E7=8E=B0=E8=B1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yomahub/liteflow/flow/LiteflowResponse.java | 10 +++++++++- .../test/cmpStep/CmpStepELSpringbootTest.java | 13 +++++++++++++ .../src/test/resources/cmpStep/flow.el.xml | 4 ++++ 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/LiteflowResponse.java b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/LiteflowResponse.java index 0bd049144..d2debd620 100644 --- a/liteflow-core/src/main/java/com/yomahub/liteflow/flow/LiteflowResponse.java +++ b/liteflow-core/src/main/java/com/yomahub/liteflow/flow/LiteflowResponse.java @@ -4,8 +4,10 @@ import com.yomahub.liteflow.flow.entity.CmpStep; import com.yomahub.liteflow.slot.Slot; import java.io.Serializable; +import java.util.HashMap; import java.util.Map; import java.util.Queue; +import java.util.function.Consumer; import java.util.function.Function; import java.util.stream.Collectors; @@ -75,7 +77,13 @@ public class LiteflowResponse implements Serializable { } public Map getExecuteSteps(){ - return this.getSlot().getExecuteSteps().stream().collect(Collectors.toMap(CmpStep::getNodeId, cmpStep -> cmpStep)); + Map map = new HashMap<>(); + this.getSlot().getExecuteSteps().forEach(cmpStep -> map.put(cmpStep.getNodeId(), cmpStep)); + return map; + } + + public Queue getExecuteStepQueue(){ + return this.getSlot().getExecuteSteps(); } public String getExecuteStepStr(){ diff --git a/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/cmpStep/CmpStepELSpringbootTest.java b/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/cmpStep/CmpStepELSpringbootTest.java index 6004ca483..0dbdb8ca5 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/cmpStep/CmpStepELSpringbootTest.java +++ b/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/cmpStep/CmpStepELSpringbootTest.java @@ -2,6 +2,7 @@ package com.yomahub.liteflow.test.cmpStep; import com.yomahub.liteflow.core.FlowExecutor; import com.yomahub.liteflow.flow.LiteflowResponse; +import com.yomahub.liteflow.flow.entity.CmpStep; import com.yomahub.liteflow.test.BaseTest; import org.junit.Assert; import org.junit.Test; @@ -13,6 +14,8 @@ import org.springframework.test.context.TestPropertySource; import org.springframework.test.context.junit4.SpringRunner; import javax.annotation.Resource; +import java.util.Map; +import java.util.Queue; /** * springboot环境step的测试例子 @@ -51,4 +54,14 @@ public class CmpStepELSpringbootTest extends BaseTest { Assert.assertEquals("a==>b", response.getExecuteStepStrWithoutTime()); } + @Test + public void testStep3() throws Exception{ + LiteflowResponse response = flowExecutor.execute2Resp("chain3", "arg"); + Assert.assertTrue(response.isSuccess()); + Map stepMap = response.getExecuteSteps(); + Assert.assertEquals(2, stepMap.size()); + Queue queue = response.getExecuteStepQueue(); + Assert.assertEquals(5, queue.size()); + } + } diff --git a/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/resources/cmpStep/flow.el.xml b/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/resources/cmpStep/flow.el.xml index 8c6affe2d..113b7c06d 100644 --- a/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/resources/cmpStep/flow.el.xml +++ b/liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/resources/cmpStep/flow.el.xml @@ -7,4 +7,8 @@ THEN(WHEN(e, a).any(true), b) + + + THEN(a, b, a, a, b) + \ No newline at end of file