spring和nospring添加测试用例

This commit is contained in:
daiqi
2022-03-12 22:55:29 +08:00
parent 65f2b663c8
commit fcf1230621
2 changed files with 123 additions and 0 deletions

View File

@@ -10,6 +10,13 @@ import com.yomahub.liteflow.entity.data.LiteflowResponse;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import com.yomahub.liteflow.property.LiteflowConfig;
import com.yomahub.liteflow.test.BaseTest;
import com.yomahub.liteflow.test.builder.cmp.ACmp;
import com.yomahub.liteflow.test.builder.cmp.BCmp;
import com.yomahub.liteflow.test.builder.cmp.CCmp;
import com.yomahub.liteflow.test.builder.cmp.DCmp;
import com.yomahub.liteflow.test.builder.cmp.ECmp;
import com.yomahub.liteflow.test.builder.cmp.FCmp;
import com.yomahub.liteflow.test.builder.cmp.GCmp;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -81,4 +88,61 @@ public class BuilderTest extends BaseTest {
Assert.assertTrue(response.isSuccess());
Assert.assertEquals("a[组件A]==>b[组件B]==>e[组件E]==>c[组件C]==>d[组件D]", response.getSlot().getExecuteStepStr());
}
//基于普通组件的builder模式测试
@Test
public void testBuilderForClassAndCode() throws Exception {
LiteFlowNodeBuilder.createNode().setId("a")
.setName("组件A")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(ACmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("b")
.setName("组件B")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(BCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("c")
.setName("组件C")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(CCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("d")
.setName("组件D")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(DCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("e")
.setName("组件E")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(ECmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("f")
.setName("组件F")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(FCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("g")
.setName("组件G")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(GCmp.class)
.build();
LiteFlowChainBuilder.createChain().setChainName("chain2").setCondition(
LiteFlowConditionBuilder.createWhenCondition().setValue("c,d").build()
).build();
LiteFlowChainBuilder.createChain().setChainName("chain1").setCondition(
LiteFlowConditionBuilder
.createThenCondition()
.setValue("a,b").build()
).setCondition(
LiteFlowConditionBuilder.createWhenCondition()
.setValue("e(f|g|chain2)").build()
).build();
LiteflowResponse<DefaultSlot> response = flowExecutor.execute2Resp("chain1");
Assert.assertTrue(response.isSuccess());
Assert.assertEquals("a[组件A]==>b[组件B]==>e[组件E]==>c[组件C]==>d[组件D]", response.getSlot().getExecuteStepStr());
}
}

View File

@@ -8,6 +8,7 @@ import com.yomahub.liteflow.entity.data.DefaultSlot;
import com.yomahub.liteflow.entity.data.LiteflowResponse;
import com.yomahub.liteflow.enums.NodeTypeEnum;
import com.yomahub.liteflow.test.BaseTest;
import com.yomahub.liteflow.test.builder.cmp1.*;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -65,6 +66,64 @@ public class BuilderSpringTest1 extends BaseTest {
.build();
LiteFlowChainBuilder.createChain().setChainName("chain2").setCondition(
LiteFlowConditionBuilder.createThenCondition().setValue("c,d").build()
).build();
LiteFlowChainBuilder.createChain().setChainName("chain1").setCondition(
LiteFlowConditionBuilder
.createWhenCondition()
.setValue("a,b").build()
).setCondition(
LiteFlowConditionBuilder.createWhenCondition()
.setValue("e(f|g|chain2)").build()
).build();
LiteflowResponse<DefaultSlot> response = flowExecutor.execute2Resp("chain1");
Assert.assertTrue(response.isSuccess());
}
//基于普通组件的builder模式测试
@Test
public void testBuilderForClassAndCode() throws Exception {
LiteFlowNodeBuilder.createNode().setId("a")
.setName("组件A")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(ACmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("b")
.setName("组件B")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(BCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("c")
.setName("组件C")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(CCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("d")
.setName("组件D")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(DCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("e")
.setName("组件E")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(ECmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("f")
.setName("组件F")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(FCmp.class)
.build();
LiteFlowNodeBuilder.createNode().setId("g")
.setName("组件G")
.setTypeCode(NodeTypeEnum.COMMON.getCode())
.setNodeComponentClazz(GCmp.class)
.build();
LiteFlowChainBuilder.createChain().setChainName("chain2").setCondition(
LiteFlowConditionBuilder.createThenCondition().setValue("c,d").build()
).build();