diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2018-09-03 16:37:32 +0200 |
---|---|---|
committer | Karen Arutyunov <karen@codesynthesis.com> | 2018-09-04 16:29:59 +0300 |
commit | 5007870b52aa549971824959a55ad3bb886f09e0 (patch) | |
tree | b0ef7f24c0b9ece2ed23f3c1792f16da324e4171 /tests/test/script/runner/exit.test | |
parent | 09d60452a80d14d9b8bf3a9395860b50683fa1e8 (diff) |
Rename .test/test{} to .testscript/testscript{}
Diffstat (limited to 'tests/test/script/runner/exit.test')
-rw-r--r-- | tests/test/script/runner/exit.test | 400 |
1 files changed, 0 insertions, 400 deletions
diff --git a/tests/test/script/runner/exit.test b/tests/test/script/runner/exit.test deleted file mode 100644 index 7933203..0000000 --- a/tests/test/script/runner/exit.test +++ /dev/null @@ -1,400 +0,0 @@ -# file : tests/test/script/runner/exit.test -# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd -# license : MIT; see accompanying LICENSE file - -.include ../common.test - -: special -: -{ - : pipelining - : - { - : to - : - $c <'exit | cat' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin must be the only pipe command - EOE - - : from - : - $c <'echo "foo" | exit' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin must be the only pipe command - EOE - } - - : redirecting - : - { - : stdin - : - $c <'exit <foo' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin stdin cannot be redirected - EOE - - : stdout - : - $c <'exit >foo' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin stdout cannot be redirected - EOE - - : stderr - : - $c <'exit 2>foo' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin stderr cannot be redirected - EOE - } - - : exit-code - : - $c <'exit != 0' && $b 2>>EOE != 0 - testscript:1:1: error: exit builtin exit code cannot be non-zero - EOE -} - -: arguments -: -{ - : none - : - $c <'exit' && $b - - : diagnostics - : - $c <'exit "foo"' && $b 2>>EOE != 0 - testscript:1:1: error: foo - EOE - - : unexpected - : - $c <'exit "foo" "bar"' && $b 2>>EOE != 0 - testscript:1:1: error: unexpected argument - EOE -} - -: execution -: -: Test that only expected commands are executed. Note that we rely on the fact -: that their execution is performed serially (see ../common.test for details). -: -{ - : test-scope - : - { - : success - : - : Note that we also test that cleanups are executed. - : - $c <<EOI && $b >>EOO - touch -f a; - echo foo >| && exit && echo bar >|; - echo baz >| - echo box >| - EOI - foo - box - EOO - - : failure - : - : Note that we also register fake cleanup, and test that cleanups are - : not executed. If they were, there would be a diagnostics printed to - : stderr regarding non-existent file. - : - $c <<EOI && $b >>EOO 2>'testscript:1:1: error: message' != 0 - echo foo >| &b && exit 'message' && echo bar >| - echo baz >|; - echo boz >| - EOI - foo - EOO - } - - : command-if - : - { - : if-clause - : - { - : success - : - $c <<EOI && $b - if true - exit - echo foo >| - else - echo bar >| - end; - echo baz >| - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:2:3: error: message' != 0 - if true - exit 'message' - echo foo >| - else - echo bar >| - end - echo baz >| - EOI - } - - : else-clause - : - { - : success - : - $c <<EOI && $b - if false - echo foo >| - else - exit - echo bar >| - end; - echo baz >| - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:4:3: error: message' != 0 - if false - echo foo >| - else - exit 'message' - echo bar >| - end - echo baz >| - EOI - } - } - - : command-if-condition - : - { - : if - : - { - : success - : - $c <<EOI && $b - if exit - echo foo >| - else - echo bar >| - end; - echo baz >| - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:1:1: error: message' != 0 - if exit 'message' - echo foo >| - else - echo bar >| - end; - echo baz >| - EOI - } - - : elif - : - { - : success - : - $c <<EOI && $b - if false - elif exit - echo foo >| - else - echo bar >| - end; - echo baz >| - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:2:1: error: message' != 0 - if false - elif exit 'message' - echo foo >| - else - echo bar >| - end; - echo baz >| - EOI - } - } - - : scope-if-condition - : - { - : if - : - { - : success - : - $c <<EOI && $b - if exit - { - echo foo >| - } - else - { - echo bar >| - } - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:1:1: error: message' != 0 - if exit 'message' - { - echo foo >| - } - else - { - echo bar >| - } - EOI - } - - : elif - : - { - : success - : - $c <<EOI && $b - if false - { - } - elif exit - { - echo foo >| - } - else - { - echo bar >| - } - EOI - - : failure - : - $c <<EOI && $b 2>'testscript:4:1: error: message' != 0 - if false - { - } - elif exit 'message' - { - echo foo >| - } - else - { - echo bar >| - } - EOI - } - } - - : group-scope - : - { - : setup - : - { - : success - : - : Test that teardown commands are executed (the 'a' file is removed), and - : cleanups are executed as well (the 'b' file is removed). - : - $c <<EOI && $b - +touch --no-cleanup a - +touch b - +exit - - echo foo >| - - -rm a - EOI - - : failure - : - : Test that teardown commands are not executed (the touch would fail), - : and cleanups are also not executed (they would fail due to non-existent - : file 'a'). - : - $c <<EOI && $b 2>'testscript:2:2: error: message' != 0 - +true &a - +exit 'message' - - echo foo >| - - -touch b/c - EOI - } - - : inner-scope - : - { - : success - : - : Test that teardown commands and cleanups are executed (see above), and - : also that the independent inner scope is still executed. - : - $c <<EOI && $b >>EOO - +touch --no-cleanup a - +touch b - - exit - - echo foo >| - - -rm a - EOI - foo - EOO - - : failure - : - : Test that teardown commands and cleanups are not executed (see above), - : as well as the independent inner scope (remember the sequential - : execution). - : - $c <<EOI && $b 2>'testscript:3:1: error: message' != 0 - +true &a - - exit 'message' - - echo foo >| - - -touch b/c - EOI - } - - : teardown - : - { - : success - : - : Test that cleanups are executed. - : - $c <<EOI && $b - -touch a - -exit - -echo foo >| - EOI - - : failure - : - : Test that cleanups are not executed. - : - $c <<EOI && $b 2>'testscript:2:2: error: message' != 0 - -true &a - -exit 'message' - -echo foo >| - EOI - } - } -} |