补充测试用例

This commit is contained in:
bryan31
2022-03-05 18:11:47 +08:00
parent 5a85461be9
commit b7aed717d8
7 changed files with 122 additions and 1 deletions

View File

@@ -0,0 +1,34 @@
package com.yomahub.liteflow.test.flowmeta;
import com.yomahub.liteflow.core.FlowExecutor;
import com.yomahub.liteflow.entity.data.DefaultSlot;
import com.yomahub.liteflow.entity.data.LiteflowResponse;
import com.yomahub.liteflow.flow.FlowBus;
import com.yomahub.liteflow.property.LiteflowConfig;
import com.yomahub.liteflow.test.BaseTest;
import com.yomahub.liteflow.test.flowmeta.cmp2.DCmp;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
public class FlowMetaTest extends BaseTest {
private static FlowExecutor flowExecutor;
@BeforeClass
public static void init(){
LiteflowConfig config = new LiteflowConfig();
config.setRuleSource("flowmeta/flow.xml");
config.setParseOnStart(false);
flowExecutor = FlowExecutor.loadInstance(config);
}
//测试动态添加元信息节点
@Test
public void testFlowMeta() {
FlowBus.addCommonNode("d", "d组件", DCmp.class);
LiteflowResponse<DefaultSlot> response= flowExecutor.execute2Resp("chain1", "it's a request");
Assert.assertTrue(response.isSuccess());
Assert.assertEquals("a==>b==>c==>d[d组件]", response.getSlot().getExecuteStepStr());
}
}

View File

@@ -0,0 +1,18 @@
/**
* <p>Title: liteflow</p>
* <p>Description: 轻量级的组件式流程框架</p>
* @author Bryan.Zhang
* @email weenyc31@163.com
* @Date 2020/4/1
*/
package com.yomahub.liteflow.test.flowmeta.cmp1;
import com.yomahub.liteflow.core.NodeComponent;
public class ACmp extends NodeComponent {
@Override
public void process() {
System.out.println("ACmp executed!");
}
}

View File

@@ -0,0 +1,19 @@
/**
* <p>Title: liteflow</p>
* <p>Description: 轻量级的组件式流程框架</p>
* @author Bryan.Zhang
* @email weenyc31@163.com
* @Date 2020/4/1
*/
package com.yomahub.liteflow.test.flowmeta.cmp1;
import com.yomahub.liteflow.core.NodeComponent;
public class BCmp extends NodeComponent {
@Override
public void process() {
System.out.println("BCmp executed!");
}
}

View File

@@ -0,0 +1,19 @@
/**
* <p>Title: liteflow</p>
* <p>Description: 轻量级的组件式流程框架</p>
* @author Bryan.Zhang
* @email weenyc31@163.com
* @Date 2020/4/1
*/
package com.yomahub.liteflow.test.flowmeta.cmp1;
import com.yomahub.liteflow.core.NodeComponent;
public class CCmp extends NodeComponent {
@Override
public void process() {
System.out.println("CCmp executed!");
}
}

View File

@@ -0,0 +1,19 @@
/**
* <p>Title: liteflow</p>
* <p>Description: 轻量级的组件式流程框架</p>
* @author Bryan.Zhang
* @email weenyc31@163.com
* @Date 2020/4/1
*/
package com.yomahub.liteflow.test.flowmeta.cmp2;
import com.yomahub.liteflow.core.NodeComponent;
public class DCmp extends NodeComponent {
@Override
public void process() {
System.out.println("Dcomp executed!");
}
}

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<flow>
<nodes>
<node id="a" class="com.yomahub.liteflow.test.flowmeta.cmp1.ACmp"/>
<node id="b" class="com.yomahub.liteflow.test.flowmeta.cmp1.BCmp"/>
<node id="c" class="com.yomahub.liteflow.test.flowmeta.cmp1.CCmp"/>
</nodes>
<chain name="chain1">
<then value="a,b,c,d"/>
</chain>
</flow>

View File

@@ -41,6 +41,6 @@ public class LiteflowConfigSpringTest extends BaseTest {
Assert.assertEquals(300000L, config.getPeriod().longValue());
Assert.assertFalse(config.getEnableLog());
Assert.assertEquals(Runtime.getRuntime().availableProcessors() * 2, config.getWhenMaxWorkers().longValue());
Assert.assertEquals(100, config.getWhenQueueLimit().longValue());
Assert.assertEquals(512, config.getWhenQueueLimit().longValue());
}
}