Results for builtin-trap-err.test.sh

statusoshosh-cpp
pass 1818
ok 11
FAIL 44
total2323
caseoshosh-cppdescription
0pass pass trap can use original $LINENO
1pass pass trap ERR and set -o errexit
2pass pass trap ERR and errexit disabled context
3pass pass trap ERR and if statement
4pass pass trap ERR and || conditional
5pass pass trap ERR and pipeline
6pass pass trap ERR pipelines without simple commands
7pass pass Pipeline group quirk
8pass pass trap ERR does not run in errexit situations
9pass pass trap ERR doesn't run in subprograms - subshell, command sub, async
10FAIL FAIL set -o errtrace: trap ERR runs in subprograms
detailsdetails
11pass pass trap ERR doesn't run with &
12FAIL FAIL set -o errtrace: trap ERR with &
detailsdetails
13pass pass trap ERR not active in shell functions in (bash behavior)
14FAIL FAIL set -o errtrace - trap ERR runs in shell functions
detailsdetails
15FAIL FAIL set -o errtrace - trap ERR runs in shell functions (LINENO)
detailsdetails
16pass pass trap ERR with "atoms": assignment (( [[
17pass pass trap ERR with for, case, { }
18pass pass trap ERR with redirect
19pass pass trap ERR with YSH proc
20pass pass trap ERR
21ok ok trap ERR and pipelines - PIPESTATUS difference
detailsdetails
22pass pass error in trap ERR (recursive)
36 passed, 2 OK, 0 not implemented, 0 BUG, 4 failed, 0 timeouts, 0 cases skipped
4 failed under osh

Details on runs that didn't PASS

osh10 set -o errtrace: trap ERR runs in subprograms

[osh stdout] Expected 'line=6\nsubshell\nline=10\nok\n', got 'subshell\nline=10\nok\n'

stdout:
subshell
line=10
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:3: 'set' got invalid option 'errtrace'
osh-cpp10 set -o errtrace: trap ERR runs in subprograms

[osh-cpp stdout] Expected 'line=6\nsubshell\nline=10\nok\n', got 'subshell\nline=10\nok\n'

stdout:
subshell
line=10
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:3: 'set' got invalid option 'errtrace'
osh12 set -o errtrace: trap ERR with &

[osh stdout] Expected 'line=8\nasync\n', got 'async\n'

stdout:
async
stderr:
  set -o errtrace
  ^~~
[ stdin ]:3: 'set' got invalid option 'errtrace'
[1] Done PID 10076
[1] Done PID 10077
osh-cpp12 set -o errtrace: trap ERR with &

[osh-cpp stdout] Expected 'line=8\nasync\n', got 'async\n'

stdout:
async
stderr:
  set -o errtrace
  ^~~
[ stdin ]:3: 'set' got invalid option 'errtrace'
[1] Done PID 10089
[1] Done PID 10090
osh14 set -o errtrace - trap ERR runs in shell functions

[osh stdout] Expected 'err\nnow with errtrace\nerr\nerr\nerr\nok\n', got 'err\nerr\nnow with errtrace\nerr\nok\n'

stdout:
err
err
now with errtrace
err
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:16: 'set' got invalid option 'errtrace'
osh-cpp14 set -o errtrace - trap ERR runs in shell functions

[osh-cpp stdout] Expected 'err\nnow with errtrace\nerr\nerr\nerr\nok\n', got 'err\nerr\nnow with errtrace\nerr\nok\n'

stdout:
err
err
now with errtrace
err
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:16: 'set' got invalid option 'errtrace'
osh15 set -o errtrace - trap ERR runs in shell functions (LINENO)

[osh stdout] Expected 'line=14\nnow with errtrace\nline=4\nline=10\nline=20\nok\n' Got 'line=10\nline=16\nnow with errtrace\nline=10\nok\n'

stdout:
line=10
line=16
now with errtrace
line=10
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:16: 'set' got invalid option 'errtrace'
osh-cpp15 set -o errtrace - trap ERR runs in shell functions (LINENO)

[osh-cpp stdout] Expected 'line=14\nnow with errtrace\nline=4\nline=10\nline=20\nok\n' Got 'line=10\nline=16\nnow with errtrace\nline=10\nok\n'

stdout:
line=10
line=16
now with errtrace
line=10
ok
stderr:
  set -o errtrace
  ^~~
[ stdin ]:16: 'set' got invalid option 'errtrace'
osh21 trap ERR and pipelines - PIPESTATUS difference

stdout:
A
err [] status=1 []
B
err [] status=1 [0 1]
err [] status=1 [0 1 0]
ok
stderr:
osh-cpp21 trap ERR and pipelines - PIPESTATUS difference

stdout:
A
err [] status=1 []
B
err [] status=1 [0 1]
err [] status=1 [0 1 0]
ok
stderr: