diff options
Diffstat (limited to 'cli/tests')
-rw-r--r-- | cli/tests/integration/mod.rs | 2 | ||||
-rw-r--r-- | cli/tests/integration/task_tests.rs | 71 | ||||
-rw-r--r-- | cli/tests/testdata/task/deno.json | 8 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_additional_args.out | 1 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_additional_args_nested_strings.out | 1 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_additional_args_no_logic.out | 1 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_additional_args_no_shell_expansion.out | 1 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_boolean_logic.out | 4 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_exit_code_5.out | 1 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_no_args.out | 9 | ||||
-rw-r--r-- | cli/tests/testdata/task/task_non_existent.out | 10 |
11 files changed, 109 insertions, 0 deletions
diff --git a/cli/tests/integration/mod.rs b/cli/tests/integration/mod.rs index 2a1e69bd1..8d934dc0f 100644 --- a/cli/tests/integration/mod.rs +++ b/cli/tests/integration/mod.rs @@ -80,6 +80,8 @@ mod lsp; mod repl; #[path = "run_tests.rs"] mod run; +#[path = "task_tests.rs"] +mod task; #[path = "test_tests.rs"] mod test; #[path = "upgrade_tests.rs"] diff --git a/cli/tests/integration/task_tests.rs b/cli/tests/integration/task_tests.rs new file mode 100644 index 000000000..5d5887469 --- /dev/null +++ b/cli/tests/integration/task_tests.rs @@ -0,0 +1,71 @@ +// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. + +use crate::itest; + +// Most of the tests for this are in deno_task_shell. +// These tests are intended to only test integration. + +itest!(task_no_args { + args: "task --config task/deno.json", + output: "task/task_no_args.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], + exit_code: 1, +}); + +itest!(task_non_existent { + args: "task --config task/deno.json non_existent", + output: "task/task_non_existent.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], + exit_code: 1, +}); + +itest!(task_boolean_logic { + args: "task --config task/deno.json boolean_logic", + output: "task/task_boolean_logic.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], +}); + +itest!(task_exit_code_1 { + args: "task --config task/deno.json exit_code_5", + output: "task/task_exit_code_5.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], + exit_code: 5, +}); + +itest!(task_additional_args { + args: "task --config task/deno.json echo 2", + output: "task/task_additional_args.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], +}); + +itest!(task_additional_args_no_shell_expansion { + args_vec: vec!["task", "--config", "task/deno.json", "echo", "$(echo 5)"], + output: "task/task_additional_args_no_shell_expansion.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], +}); + +itest!(task_additional_args_nested_strings { + args_vec: vec![ + "task", + "--config", + "task/deno.json", + "echo", + "string \"quoted string\"" + ], + output: "task/task_additional_args_nested_strings.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], +}); + +itest!(task_additional_args_no_logic { + args_vec: vec![ + "task", + "--config", + "task/deno.json", + "echo", + "||", + "echo", + "5" + ], + output: "task/task_additional_args_no_logic.out", + envs: vec![("NO_COLOR".to_string(), "1".to_string())], +}); diff --git a/cli/tests/testdata/task/deno.json b/cli/tests/testdata/task/deno.json new file mode 100644 index 000000000..c26e143e1 --- /dev/null +++ b/cli/tests/testdata/task/deno.json @@ -0,0 +1,8 @@ +{ + "tasks": { + "boolean_logic": "sleep 0.1 && echo 3 && echo 4 & echo 1 && echo 2 || echo NOPE", + "echo": "echo 1", + "strings": "deno run main.ts && deno eval \"console.log(\\\"test\\\")\"", + "exit_code_5": "echo $(echo 10 ; exit 2) && exit 5" + } +} diff --git a/cli/tests/testdata/task/task_additional_args.out b/cli/tests/testdata/task/task_additional_args.out new file mode 100644 index 000000000..8d04f961a --- /dev/null +++ b/cli/tests/testdata/task/task_additional_args.out @@ -0,0 +1 @@ +1 2 diff --git a/cli/tests/testdata/task/task_additional_args_nested_strings.out b/cli/tests/testdata/task/task_additional_args_nested_strings.out new file mode 100644 index 000000000..0e5f35c7f --- /dev/null +++ b/cli/tests/testdata/task/task_additional_args_nested_strings.out @@ -0,0 +1 @@ +1 string "quoted string" diff --git a/cli/tests/testdata/task/task_additional_args_no_logic.out b/cli/tests/testdata/task/task_additional_args_no_logic.out new file mode 100644 index 000000000..a4886a60d --- /dev/null +++ b/cli/tests/testdata/task/task_additional_args_no_logic.out @@ -0,0 +1 @@ +1 || echo 5 diff --git a/cli/tests/testdata/task/task_additional_args_no_shell_expansion.out b/cli/tests/testdata/task/task_additional_args_no_shell_expansion.out new file mode 100644 index 000000000..826a3aaf1 --- /dev/null +++ b/cli/tests/testdata/task/task_additional_args_no_shell_expansion.out @@ -0,0 +1 @@ +1 $(echo 5) diff --git a/cli/tests/testdata/task/task_boolean_logic.out b/cli/tests/testdata/task/task_boolean_logic.out new file mode 100644 index 000000000..94ebaf900 --- /dev/null +++ b/cli/tests/testdata/task/task_boolean_logic.out @@ -0,0 +1,4 @@ +1 +2 +3 +4 diff --git a/cli/tests/testdata/task/task_exit_code_5.out b/cli/tests/testdata/task/task_exit_code_5.out new file mode 100644 index 000000000..f599e28b8 --- /dev/null +++ b/cli/tests/testdata/task/task_exit_code_5.out @@ -0,0 +1 @@ +10 diff --git a/cli/tests/testdata/task/task_no_args.out b/cli/tests/testdata/task/task_no_args.out new file mode 100644 index 000000000..edf028649 --- /dev/null +++ b/cli/tests/testdata/task/task_no_args.out @@ -0,0 +1,9 @@ +Available tasks: +- boolean_logic + sleep 0.1 && echo 3 && echo 4 & echo 1 && echo 2 || echo NOPE +- echo + echo 1 +- exit_code_5 + echo $(echo 10 ; exit 2) && exit 5 +- strings + deno run main.ts && deno eval "console.log(\"test\")" diff --git a/cli/tests/testdata/task/task_non_existent.out b/cli/tests/testdata/task/task_non_existent.out new file mode 100644 index 000000000..916a85706 --- /dev/null +++ b/cli/tests/testdata/task/task_non_existent.out @@ -0,0 +1,10 @@ +Task not found: non_existent +Available tasks: +- boolean_logic + sleep 0.1 && echo 3 && echo 4 & echo 1 && echo 2 || echo NOPE +- echo + echo 1 +- exit_code_5 + echo $(echo 10 ; exit 2) && exit 5 +- strings + deno run main.ts && deno eval "console.log(\"test\")" |