| Index: lib/src/prism/tests/languages/batch/command_feature.test
|
| diff --git a/lib/src/prism/tests/languages/batch/command_feature.test b/lib/src/prism/tests/languages/batch/command_feature.test
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..350788a8bd980567f6117dd4dcc718b6f9b0ca04
|
| --- /dev/null
|
| +++ b/lib/src/prism/tests/languages/batch/command_feature.test
|
| @@ -0,0 +1,103 @@
|
| +FOR /l %%a in (5,-1,1) do (TITLE %title% -- closing in %%as)
|
| +SET title=%~n0
|
| +echo.Hello World
|
| +@ECHO OFF
|
| +if not defined ProgressFormat set "ProgressFormat=[PPPP]"
|
| +EXIT /b
|
| +set /a ProgressCnt+=1
|
| +IF "%~1" NEQ "" (SET %~1=%new%) ELSE (echo.%new%)
|
| +
|
| +----------------------------------------------------
|
| +
|
| +[
|
| + ["command", [
|
| + ["keyword", "FOR"],
|
| + ["parameter", ["/l"]],
|
| + ["variable", "%%a"],
|
| + ["keyword", "in"],
|
| + ["punctuation", "("],
|
| + ["number", "5"], ["punctuation", ","],
|
| + ["number", "-1"], ["punctuation", ","],
|
| + ["number", "1"], ["punctuation", ")"],
|
| + ["keyword", "do"]
|
| + ]],
|
| + ["punctuation", "("],
|
| + ["command", [
|
| + ["keyword", "TITLE"],
|
| + ["variable", "%title%"],
|
| + " -- closing in ",
|
| + ["variable", "%%as"]
|
| + ]],
|
| + ["punctuation", ")"],
|
| +
|
| + ["command", [
|
| + ["keyword", "SET"],
|
| + ["variable", "title"],
|
| + ["operator", "="],
|
| + ["variable", "%~n0"]
|
| + ]],
|
| +
|
| + ["command", [
|
| + ["keyword", "echo"],
|
| + ".Hello World"
|
| + ]],
|
| +
|
| + ["operator", "@"],
|
| + ["command", [
|
| + ["keyword", "ECHO"],
|
| + " OFF"
|
| + ]],
|
| +
|
| + ["command", [
|
| + ["keyword", "if"],
|
| + ["keyword", "not"],
|
| + ["keyword", "defined"],
|
| + " ProgressFormat"
|
| + ]],
|
| + ["command", [
|
| + ["keyword", "set"],
|
| + ["string", "\"ProgressFormat=[PPPP]\""]
|
| + ]],
|
| +
|
| + ["command", [
|
| + ["keyword", "EXIT"],
|
| + ["parameter", ["/b"]]
|
| + ]],
|
| +
|
| + ["command", [
|
| + ["keyword", "set"],
|
| + ["parameter", ["/a"]],
|
| + ["variable", "ProgressCnt"],
|
| + ["operator", "+="],
|
| + ["number", "1"]
|
| + ]],
|
| +
|
| + ["command", [
|
| + ["keyword", "IF"],
|
| + ["string", "\"%~1\""],
|
| + ["operator", "NEQ"],
|
| + ["string", "\"\""]
|
| + ]],
|
| + ["punctuation", "("],
|
| + ["command", [
|
| + ["keyword", "SET"],
|
| + ["variable", "%~1"],
|
| + ["operator", "="],
|
| + ["variable", "%new%"]
|
| + ]],
|
| + ["punctuation", ")"],
|
| + ["command", [
|
| + ["keyword", "ELSE"]
|
| + ]],
|
| + ["punctuation", "("],
|
| + ["command", [
|
| + ["keyword", "echo"],
|
| + ".",
|
| + ["variable", "%new%"]
|
| + ]],
|
| + ["punctuation", ")"]
|
| +]
|
| +
|
| +----------------------------------------------------
|
| +
|
| +Checks for commands.
|
|
|