Răsfoiți Sursa

test: custom el class parsing yml file

119431682@qq.com 2 ani în urmă
părinte
comite
622669176d

+ 39 - 0
liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/parsecustom/CustomParserYmlELSpringbootTest.java

@@ -0,0 +1,39 @@
+package com.yomahub.liteflow.test.parsecustom;
+
+import com.yomahub.liteflow.core.FlowExecutor;
+import com.yomahub.liteflow.flow.LiteflowResponse;
+import com.yomahub.liteflow.test.BaseTest;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.test.context.TestPropertySource;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import javax.annotation.Resource;
+
+/**
+ * springboot环境的自定义yml parser单元测试
+ * 主要测试自定义配置源类是否能引入springboot中的其他依赖
+ *
+ * @author junjun
+ */
+@RunWith(SpringRunner.class)
+@TestPropertySource(value = "classpath:/parsecustom/application-custom-yml.properties")
+@SpringBootTest(classes = CustomParserYmlELSpringbootTest.class)
+@EnableAutoConfiguration
+@ComponentScan({"com.yomahub.liteflow.test.parsecustom.cmp","com.yomahub.liteflow.test.parsecustom.bean"})
+public class CustomParserYmlELSpringbootTest extends BaseTest {
+
+    @Resource
+    private FlowExecutor flowExecutor;
+
+    //测试springboot场景的自定义json parser
+    @Test
+    public void testYmlCustomParser() {
+        LiteflowResponse response = flowExecutor.execute2Resp("chain1", "args");
+        Assert.assertTrue(response.isSuccess());
+    }
+}

+ 19 - 0
liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/java/com/yomahub/liteflow/test/parsecustom/parser/CustomYmlFlowParser.java

@@ -0,0 +1,19 @@
+package com.yomahub.liteflow.test.parsecustom.parser;
+
+import com.yomahub.liteflow.parser.el.ClassYmlFlowELParser;
+
+/**
+ * 模拟用户自定义源解析
+ *
+ * @author junjun
+ */
+public class CustomYmlFlowParser extends ClassYmlFlowELParser {
+    @Override
+    public String parseCustom() {
+        //模拟自定义解析结果
+        return "flow:\n" +
+                "  chain:\n" +
+                "    - name: chain1\n" +
+                "      value: \"THEN(a, b, c);\"";
+    }
+}

+ 1 - 0
liteflow-testcase-el/liteflow-testcase-el-springboot/src/test/resources/parsecustom/application-custom-yml.properties

@@ -0,0 +1 @@
+liteflow.rule-source=el_yml:com.yomahub.liteflow.test.parsecustom.parser.CustomYmlFlowParser