新增一个验证脚本的方法

This commit is contained in:
gezuao
2024-01-25 20:03:53 +08:00
parent c373fd78cd
commit 6f63864b65
15 changed files with 596 additions and 12 deletions

View File

@@ -0,0 +1,51 @@
package com.yomahub.liteflow.test.script.javascript.validate;
import com.yomahub.liteflow.script.javascript.JavaScriptExecutor;
import com.yomahub.liteflow.script.validator.ScriptValidator;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest(classes = ValidateJavaScriptScriptComponentTest.class)
@EnableAutoConfiguration
public class ValidateJavaScriptScriptComponentTest {
@Test
public void testJavaScriptScriptComponentValidateFunction(){
String correctScript = "var a=3;\n" +
" var b=2;\n" +
" var c=1;\n" +
" var d=5;\n" +
"\n" +
" function addByArray(values) {\n" +
" var sum = 0;\n" +
" for (var i = 0; i < values.length; i++) {\n" +
" sum += values[i];\n" +
" }\n" +
" return sum;\n" +
" }\n" +
"\n" +
" var result = addByArray([a,b,c,d]);\n" +
"\n" +
" defaultContext.setData(\"s1\",parseInt(result));";
// 语法错误
String wrongScript = "var a=3;\n" +
" var b=2;\n" +
" var c=1;\n" +
" var d=5;\n" +
"\n" +
" fon addByArray(values) {\n" +
" var sum = 0;\n" +
" for (var i = 0; i < values.length; i++) {\n" +
" sum += values[i];\n" +
" }\n" +
" return sum;\n" +
" }\n" +
"\n" +
" var result = addByArray([a,b,c,d]);\n" +
"\n" +
" defaultContext.setData(\"s1\",parseInt(result));";
Assertions.assertTrue(ScriptValidator.validate(correctScript));
Assertions.assertFalse(ScriptValidator.validate(wrongScript));
}
}