178 passed, 0 OK, 0 not implemented, 1 BUG, 66 failed, 0 timeouts, 0 cases skipped
toysh | 0 errexit aborts early [toysh stdout] Expected u'', got 'done\n' [toysh status] Expected 1, got 0 stdout: donestderr: set: bad -o errexit |
sush | 0 errexit aborts early [sush stdout] Expected u'', got 'done\n' [sush status] Expected 1, got 0 stdout: donestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 0 errexit aborts early [brush stdout] Expected u'', got 'done\n' [brush status] Expected 1, got 0 stdout: donestderr: |
toysh | 1 errexit for nonexistent command [toysh stdout] Expected u'', got 'done\n' [toysh status] Expected 127, got 0 stdout: donestderr: set: bad -o errexit sh: nonexistent__ZZ: No such file or directory |
sush | 1 errexit for nonexistent command [sush stdout] Expected u'', got 'done\n' [sush status] Expected 127, got 0 stdout: donestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: nonexistent__ZZ: command not found |
brush | 1 errexit for nonexistent command [brush stdout] Expected u'', got 'done\n' [brush status] Expected 127, got 0 stdout: donestderr: nonexistent__ZZ: command not found |
toysh | 2 errexit aborts early on pipeline [toysh stdout] Expected u'', got 'two\n' [toysh status] Expected 1, got 0 stdout: twostderr: set: bad -o errexit |
sush | 2 errexit aborts early on pipeline [sush stdout] Expected u'', got 'two\n' [sush status] Expected 1, got 0 stdout: twostderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 2 errexit aborts early on pipeline [brush stdout] Expected u'', got 'two\n' [brush status] Expected 1, got 0 stdout: twostderr: |
toysh | 3 errexit with { } [toysh stdout] Expected 'one\n', got 'one\ntwo\n' [toysh status] Expected 1, got 0 stdout: one twostderr: set: bad -o errexit |
sush | 3 errexit with { } [sush stdout] Expected 'one\n', got 'one\ntwo\n' [sush status] Expected 1, got 0 stdout: one twostderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 3 errexit with { } [brush stdout] Expected 'one\n', got 'one\ntwo\n' [brush status] Expected 1, got 0 stdout: one twostderr: |
toysh | 8 errexit test && and fail [toysh stdout] Expected u'', got 'status=1\n' [toysh status] Expected 1, got 0 stdout: status=1stderr: set: bad -o errexit |
sush | 8 errexit test && and fail [sush stdout] Expected u'', got 'status=1\n' [sush status] Expected 1, got 0 stdout: status=1stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 8 errexit test && and fail [brush stdout] Expected u'', got 'status=1\n' [brush status] Expected 1, got 0 stdout: status=1stderr: |
toysh | 9 More && || [toysh stdout] Expected 'group\nstatus=1\n\nsubshell\nstatus=42\n\nstatus=1\n' Got 'group\nbad\nstatus=0\n\nsubshell\nbad\nstatus=0\n\nbad\nstatus=0\n' stdout: group bad status=0 subshell bad status=0 bad status=0stderr: set: bad -e set: bad -e set: bad -e |
brush | 9 More && || [brush stdout] Expected 'group\nstatus=1\n\nsubshell\nstatus=42\n\nstatus=1\n' Got 'group\nbad\nstatus=0\n\nsubshell\nbad\nstatus=0\n\nbad\nstatus=0\n' stdout: group bad status=0 subshell bad status=0 bad status=0stderr: |
toysh | 12 errexit and time { } [toysh status] Expected 1, got 0 stdout: status=1stderr: set: bad -o errexit real 0.000 user 0.650 sys 0.000 |
sush | 12 errexit and time { } [sush status] Expected 1, got 0 stdout: status=1stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name real 0m0.000007s user 0m0.000008s sys 0m0.000000s |
brush | 12 errexit and time { } [brush status] Expected 1, got 0 stdout: status=1stderr: real 0m0.000s user 0m0.000s sys 0m0.000s |
sush | 15 errexit with while/until [sush status] Expected 0, got 2 stdout: okstderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: Unexpected token: do sush: break: only meaningful in a `for', `while', or `until' loop /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 9: Unexpected token: done |
toysh | 16 errexit with (( )) [toysh stdout] Expected u'', got 'done\n' [toysh status] Expected 1, got 0 stdout: donestderr: set: bad -o errexit |
sush | 16 errexit with (( )) [sush stdout] Expected u'', got 'done\n' [sush status] Expected 1, got 0 stdout: donestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 16 errexit with (( )) [brush stdout] Expected u'', got 'done\n' [brush status] Expected 1, got 0 stdout: donestderr: |
toysh | 17 errexit with subshell [toysh stdout] Expected 'one\n', got 'one\ntwo\nthree\n' [toysh status] Expected 1, got 0 stdout: one two threestderr: set: bad -o errexit |
sush | 17 errexit with subshell [sush stdout] Expected 'one\n', got 'one\ntwo\nthree\n' [sush status] Expected 1, got 0 stdout: one two threestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 17 errexit with subshell [brush stdout] Expected 'one\n', got 'one\ntwo\nthree\n' [brush status] Expected 1, got 0 stdout: one two threestderr: |
toysh | 18 set -o errexit while it's being ignored (moot with strict_errexit) [toysh stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [toysh status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: set: bad -o errexit set: bad -o errexit |
sush | 18 set -o errexit while it's being ignored (moot with strict_errexit) [sush stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [sush status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name |
brush | 18 set -o errexit while it's being ignored (moot with strict_errexit) [brush stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [brush status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: |
toysh | 21 setting errexit in a subshell works but doesn't affect parent shell [toysh stdout] Expected '1\n2\n3\n5\n6\n', got '1\n2\n3\n4\n5\n6\n' stdout: 1 2 3 4 5 6stderr: set: bad -o errexit |
sush | 21 setting errexit in a subshell works but doesn't affect parent shell [sush stdout] Expected '1\n2\n3\n5\n6\n', got '1\n2\n3\n4\n5\n6\n' stdout: 1 2 3 4 5 6stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 21 setting errexit in a subshell works but doesn't affect parent shell [brush stdout] Expected '1\n2\n3\n5\n6\n', got '1\n2\n3\n4\n5\n6\n' stdout: 1 2 3 4 5 6stderr: |
toysh | 22 set errexit while it's ignored in a subshell (moot with strict_errexit) [toysh stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [toysh status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: set: bad -o errexit set: bad -o errexit |
sush | 22 set errexit while it's ignored in a subshell (moot with strict_errexit) [sush stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [sush status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name |
brush | 22 set errexit while it's ignored in a subshell (moot with strict_errexit) [brush stdout] Expected '1\n2\n3\n4\n5\n6\n', got '1\n2\n3\n4\n5\n6\n7\n' [brush status] Expected 1, got 0 stdout: 1 2 3 4 5 6 7stderr: |
toysh | 23 shopt -s strict:all || true while errexit is on [toysh stdout] Expected 'one\n', got 'one\ntwo\n' [toysh status] Expected 1, got 0 stdout: one twostderr: set: bad -o errexit sh: shopt: No such file or directory |
sush | 23 shopt -s strict:all || true while errexit is on [sush stdout] Expected 'one\n', got 'one\ntwo\n' [sush status] Expected 1, got 0 stdout: one twostderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: shopt: strict:all: not supported yet |
brush | 23 shopt -s strict:all || true while errexit is on [brush stdout] Expected 'one\n', got 'one\ntwo\n' [brush status] Expected 1, got 0 stdout: one twostderr: shopt: strict:all: invalid shell option name |
toysh | 24 errexit double guard [toysh stdout] Expected 'true\n', got '' [toysh status] Expected 1, got 2 stdout: stderr: set: bad -o errexit main: line 2: sh: syntax error: fi |
sush | 24 errexit double guard [sush stdout] Expected 'true\n', got 'true\ndone\n' [sush status] Expected 1, got 0 stdout: true donestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 24 errexit double guard [brush stdout] Expected 'true\n', got 'true\ndone\n' [brush status] Expected 1, got 0 stdout: true donestderr: |
toysh | 25 background processes respect errexit [toysh stdout] Expected 'one\n', got 'one\ntwo\n' [toysh status] Expected 1, got 0 stdout: one twostderr: set: bad -o errexit |
sush | 25 background processes respect errexit [sush stdout] Expected 'one\n', got 'one\ntwo\n' [sush status] Expected 1, got 42 stdout: one twostderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name 3699515 |
brush | 25 background processes respect errexit [brush stdout] Expected 'one\n', got 'one\ntwo\n' [brush status] Expected 1, got 0 stdout: one twostderr: |
toysh | 26 pipeline process respects errexit [toysh stdout] Expected 'one\n[three]\n', got 'one\ntwo\nfour\n' [toysh status] Expected 1, got 0 stdout: one two fourstderr: set: bad -o errexit sh: read: No such file or directory |
sush | 26 pipeline process respects errexit [sush stdout] Expected 'one\n[three]\n', got 'one\ntwo\n[three]\n[four]\nfour\n' [sush status] Expected 1, got 0 stdout: one two [three] [four] fourstderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name |
brush | 26 pipeline process respects errexit [brush stdout] Expected 'one\n[three]\n', got 'one\ntwo\n[three]\n[four]\nfour\n' [brush status] Expected 1, got 0 stdout: one two [three] [four] fourstderr: |
toysh | 27 simple command / assign - redir failure DOES respect errexit [toysh stdout] Expected 'status=1\nstatus=1\nstatus=1\n', got 'builtin status=1\nstatus=0\nextern status=1\nstatus=0\nassign status=1\nstatus=0\n' stdout: builtin status=1 status=0 extern status=1 status=0 assign status=1 status=0stderr: set: bad -o errexit sh: /: Is a directory set: bad -o errexit sh: /: Is a directory set: bad -o errexit sh: /: Is a directory |
sush | 27 simple command / assign - redir failure DOES respect errexit [sush stdout] Expected 'status=1\nstatus=1\nstatus=1\n', got 'builtin status=1\nstatus=0\nextern status=1\nstatus=0\nassign status=2\nstatus=0\n' stdout: builtin status=1 status=0 extern status=1 status=0 assign status=2 status=0stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: /: is a directory /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: /: is a directory /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name |
brush | 27 simple command / assign - redir failure DOES respect errexit [brush stdout] Expected 'status=1\nstatus=1\nstatus=1\n', got 'builtin status=1\nstatus=0\nextern status=1\nstatus=0\nassign status=1\nstatus=0\n' stdout: builtin status=1 status=0 extern status=1 status=0 assign status=1 status=0stderr: error: failed to redirect to /: Is a directory (os error 21) error: failed to redirect to /: Is a directory (os error 21) error: failed to redirect to /: Is a directory (os error 21) |
toysh | 28 simple command that's an alias - redir failure checked [toysh stdout] Expected 'status=1\n', got 'alias status=1\nstatus=0\n' stdout: alias status=1 status=0stderr: sh: shopt: No such file or directory set: bad -o errexit sh: alias: No such file or directory sh: /: Is a directory |
sush | 28 simple command that's an alias - redir failure checked [sush stdout] Expected 'status=1\n', got 'alias status=2\nstatus=0\n' stdout: alias status=2 status=0stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 4: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 7: Unexpected token: } |
brush | 28 simple command that's an alias - redir failure checked [brush stdout] Expected 'status=1\n', got 'alias status=1\nstatus=0\n' stdout: alias status=1 status=0stderr: error: failed to redirect to /: Is a directory (os error 21) |
toysh | 29 bash atoms [[ (( - redir failure checked [toysh stdout] Expected 'status=1\nstatus=1\n', got '' [toysh status] Expected 0, got -6 stdout: stderr: munmap_chunk(): invalid pointer |
sush | 29 bash atoms [[ (( - redir failure checked [sush stdout] Expected 'status=1\nstatus=1\n', got 'dbracket status=1\nstatus=0\ndparen status=2\nstatus=0\n' stdout: dbracket status=1 status=0 dparen status=2 status=0stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: /: is a directory /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 2: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 4: Unexpected token: > |
brush | 29 bash atoms [[ (( - redir failure checked [brush stdout] Expected 'status=1\nstatus=1\n', got 'status=2\nstatus=1\n' stdout: status=2 status=1stderr: [31mERROR[0m main: syntax error near token `>' (line 3 col 13) [31mERROR[0m error: failed to redirect to /: Is a directory (os error 21) |
toysh | 30 brace group - redir failure checked [toysh stdout] Expected '', got 'status=1\nshould not get here\n' [toysh status] Expected 1, got 0 stdout: status=1 should not get herestderr: set: bad -o errexit sh: not_exist.txt: No such file or directory |
sush | 30 brace group - redir failure checked [sush stdout] Expected '', got 'status=1\nshould not get here\n' [sush status] Expected 1, got 0 stdout: status=1 should not get herestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: not_exist.txt: entity not found |
brush | 30 brace group - redir failure checked [brush stdout] Expected '', got 'status=0\nshould not get here\n' [brush status] Expected 1, got 0 stdout: status=0 should not get herestderr: [31mERROR[0m error: failed to redirect to /home/andy/git/oils-for-unix/oils/_tmp/spec-tmp/errexit.test.sh.3694610/30-brush/not_exist.txt: No such file or directory (os error 2) |
toysh | 31 while loop - redirect failure checked [toysh stdout] Expected '', got 'status=1\nshould not get here\n' [toysh status] Expected 1, got 0 stdout: status=1 should not get herestderr: set: bad -o errexit sh: not_exist.txt: No such file or directory |
sush | 31 while loop - redirect failure checked [sush stdout] Expected '', got 'status=1\nshould not get here\n' [sush status] Expected 1, got 0 stdout: status=1 should not get herestderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 1: set: errexit: invalid option name /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: not_exist.txt: entity not found |
brush | 31 while loop - redirect failure checked [brush stdout] Expected '', got 'status=0\nshould not get here\n' [brush status] Expected 1, got 0 stdout: status=0 should not get herestderr: [31mERROR[0m error: failed to redirect to /home/andy/git/oils-for-unix/oils/_tmp/spec-tmp/errexit.test.sh.3694610/31-brush/not_exist.txt: No such file or directory (os error 2) |
sush | 32 set -e enabled in function (regression) [sush stdout] Expected 'should be executed\nshould be executed\n', got '' [sush status] Expected 0, got 1 stdout: stderr: |
bash | 33 set -e in function #2 stdout: stderr: |
toysh | 33 set -e in function #2 [toysh stdout] Expected 'should be executed\nshould be executed\n', got 'should be executed\n' stdout: should be executedstderr: sh: foo: No such file or directory |
sush | 33 set -e in function #2 [sush stdout] Expected 'should be executed\nshould be executed\n', got '' [sush status] Expected 0, got 1 stdout: stderr: |