spec test index / oilshell.org
status | osh | osh-cpp | |
pass | 15 | 15 | |
FAIL | 4 | 4 | |
total | 19 | 19 | |
case | osh | osh-cpp | description |
0 | pass | pass | Customize PS4 |
1 | pass | pass | xtrace_details doesn't show [[ ]] etc. |
2 | pass | pass | xtrace_details AND xtrace_rich on |
3 | pass | pass | proc and shell function |
4 | pass | pass | eval |
5 | pass | pass | source |
6 | pass | pass | external and builtin |
7 | pass | pass | subshell |
8 | pass | pass | command sub |
9 | FAIL | FAIL | process sub (nondeterministic) |
details | details | ||
10 | FAIL | FAIL | pipeline (nondeterministic) |
details | details | ||
11 | pass | pass | singleton pipeline |
12 | FAIL | FAIL | Background pipeline (separate code path) |
details | details | ||
13 | FAIL | FAIL | Background process with fork and & (nondeterministic) |
details | details | ||
14 | pass | pass | Here doc |
15 | pass | pass | Two here docs |
16 | pass | pass | Here doc greater than 4096 bytes |
17 | pass | pass | Control Flow |
18 | pass | pass | Encoded argv uses shell encoding, not J8 |
30 passed, 0 OK, 0 not implemented, 0 BUG, 4 failed, 0 timeouts, 0 cases skipped 4 failed under osh
osh | 9 process sub (nondeterministic) [osh stderr] Expected " . 12345 builtin echo 1\n . 12345 exec seq 2\n. builtin ':' begin\n. builtin set '+x'\n; process 12345: status 0\n; process 12345: status 0\n; process 12345: status 0\n| command 12345: cat /dev/fd/N /dev/fd/N\n| proc sub 12345\n| proc sub 12345\n" Got " . 12345 builtin echo 1\n ; 12345 process 12345: status 0\n | 12345 command 12345: seq 2\n. builtin ':' begin\n. builtin set '+x'\n; process 12345: status 0\n; process 12345: status 0\n; process 12345: status 0\n| command 12345: cat /dev/fd/N /dev/fd/N\n| proc sub 12345\n| proc sub 12345\n" stdout: 1 2 1stderr: . 12345 builtin echo 1 ; 12345 process 12345: status 0 | 12345 command 12345: seq 2 . builtin ':' begin . builtin set '+x' ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | command 12345: cat /dev/fd/N /dev/fd/N | proc sub 12345 | proc sub 12345 |
osh-cpp | 9 process sub (nondeterministic) [osh-cpp stderr] Expected " . 12345 builtin echo 1\n . 12345 exec seq 2\n. builtin ':' begin\n. builtin set '+x'\n; process 12345: status 0\n; process 12345: status 0\n; process 12345: status 0\n| command 12345: cat /dev/fd/N /dev/fd/N\n| proc sub 12345\n| proc sub 12345\n" Got " . 12345 builtin echo 1\n ; 12345 process 12345: status 0\n | 12345 command 12345: seq 2\n. builtin ':' begin\n. builtin set '+x'\n; process 12345: status 0\n; process 12345: status 0\n; process 12345: status 0\n| command 12345: cat /dev/fd/N /dev/fd/N\n| proc sub 12345\n| proc sub 12345\n" stdout: 1 2 1stderr: . 12345 builtin echo 1 ; 12345 process 12345: status 0 | 12345 command 12345: seq 2 . builtin ':' begin . builtin set '+x' ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | command 12345: cat /dev/fd/N /dev/fd/N | proc sub 12345 | proc sub 12345 |
osh | 10 pipeline (nondeterministic) [osh stderr] Expected " . 12345 builtin echo 1\n . 12345 builtin echo 2\n . 12345 exec sort\n < 12345 proc myfunc\n > 12345 proc myfunc\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | command 12345: wc -l\n | part 12345\n | part 12345\n. builtin ':' begin\n. builtin set '+x'\n< pipeline\n> pipeline\n" Got " . 12345 builtin echo 1\n . 12345 builtin echo 2\n ; 12345 process 12345: status 0\n < 12345 proc myfunc\n > 12345 proc myfunc\n | 12345 command 12345: sort\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | command 12345: wc -l\n | part 12345\n | part 12345\n. builtin ':' begin\n. builtin set '+x'\n< pipeline\n> pipeline\n" stdout: 2stderr: . 12345 builtin echo 1 . 12345 builtin echo 2 ; 12345 process 12345: status 0 < 12345 proc myfunc > 12345 proc myfunc | 12345 command 12345: sort ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | command 12345: wc -l | part 12345 | part 12345 . builtin ':' begin . builtin set '+x' < pipeline > pipeline |
osh-cpp | 10 pipeline (nondeterministic) [osh-cpp stderr] Expected " . 12345 builtin echo 1\n . 12345 builtin echo 2\n . 12345 exec sort\n < 12345 proc myfunc\n > 12345 proc myfunc\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | command 12345: wc -l\n | part 12345\n | part 12345\n. builtin ':' begin\n. builtin set '+x'\n< pipeline\n> pipeline\n" Got " . 12345 builtin echo 1\n . 12345 builtin echo 2\n ; 12345 process 12345: status 0\n < 12345 proc myfunc\n > 12345 proc myfunc\n | 12345 command 12345: sort\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | command 12345: wc -l\n | part 12345\n | part 12345\n. builtin ':' begin\n. builtin set '+x'\n< pipeline\n> pipeline\n" stdout: 2stderr: . 12345 builtin echo 1 . 12345 builtin echo 2 ; 12345 process 12345: status 0 < 12345 proc myfunc > 12345 proc myfunc | 12345 command 12345: sort ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | command 12345: wc -l | part 12345 | part 12345 . builtin ':' begin . builtin set '+x' < pipeline > pipeline |
osh | 12 Background pipeline (separate code path) [osh stderr] Expected " . 12345 builtin echo 1\n . 12345 builtin echo 2\n . 12345 exec grep ZZZ\n . 12345 exec sort\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 1\n < 12345 proc myfunc\n > 12345 proc myfunc\n. builtin ':' begin\n. builtin echo 'status=0'\n. builtin set '+x'\n< wait\n> wait\n[1] Done PGID 12345\n| part 12345\n| part 12345\n| part 12345\n" Got " . 12345 builtin echo 1\n . 12345 builtin echo 2\n ; 12345 process 12345: status 0\n ; 12345 process 12345: status 1\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 1\n < 12345 proc myfunc\n > 12345 proc myfunc\n | 12345 command 12345: grep ZZZ\n | 12345 command 12345: sort\n. builtin ':' begin\n. builtin echo 'status=0'\n. builtin set '+x'\n< wait\n> wait\n[1] Done PGID 12345\n| part 12345\n| part 12345\n| part 12345\n" stdout: status=0stderr: . 12345 builtin echo 1 . 12345 builtin echo 2 ; 12345 process 12345: status 0 ; 12345 process 12345: status 1 ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 1 < 12345 proc myfunc > 12345 proc myfunc | 12345 command 12345: grep ZZZ | 12345 command 12345: sort . builtin ':' begin . builtin echo 'status=0' . builtin set '+x' < wait > wait [1] Done PGID 12345 | part 12345 | part 12345 | part 12345 |
osh-cpp | 12 Background pipeline (separate code path) [osh-cpp stderr] Expected " . 12345 builtin echo 1\n . 12345 builtin echo 2\n . 12345 exec grep ZZZ\n . 12345 exec sort\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 1\n < 12345 proc myfunc\n > 12345 proc myfunc\n. builtin ':' begin\n. builtin echo 'status=0'\n. builtin set '+x'\n< wait\n> wait\n[1] Done PGID 12345\n| part 12345\n| part 12345\n| part 12345\n" Got " . 12345 builtin echo 1\n . 12345 builtin echo 2\n ; 12345 process 12345: status 0\n ; 12345 process 12345: status 1\n ; process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 1\n < 12345 proc myfunc\n > 12345 proc myfunc\n | 12345 command 12345: grep ZZZ\n | 12345 command 12345: sort\n. builtin ':' begin\n. builtin echo 'status=0'\n. builtin set '+x'\n< wait\n> wait\n[1] Done PGID 12345\n| part 12345\n| part 12345\n| part 12345\n" stdout: status=0stderr: . 12345 builtin echo 1 . 12345 builtin echo 2 ; 12345 process 12345: status 0 ; 12345 process 12345: status 1 ; process 12345: status 0 ; process 12345: status 0 ; process 12345: status 1 < 12345 proc myfunc > 12345 proc myfunc | 12345 command 12345: grep ZZZ | 12345 command 12345: sort . builtin ':' begin . builtin echo 'status=0' . builtin set '+x' < wait > wait [1] Done PGID 12345 | part 12345 | part 12345 | part 12345 |
osh | 13 Background process with fork and & (nondeterministic) [osh stderr] Expected " . 12345 exec sleep 0.1\n . 12345 exec sleep 0.1\n ; process 12345: status 0\n ; process 12345: status 0\n. builtin fork\n. builtin set '+x'\n. builtin shopt -s 'oil:upgrade'\n< wait\n< wait\n> wait\n> wait\n[1] Done PID 12345\n[1] Done PID 12345\n| fork 12345\n| fork 12345\n" Got " ; 12345 process 12345: status 0\n ; 12345 process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | 12345 command 12345: sleep 0.1\n | 12345 command 12345: sleep 0.1\n. builtin fork\n. builtin set '+x'\n. builtin shopt -s 'oil:upgrade'\n< wait\n< wait\n> wait\n> wait\n[1] Done PID 12345\n[1] Done PID 12345\n| fork 12345\n| fork 12345\n" stdout: stderr: ; 12345 process 12345: status 0 ; 12345 process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | 12345 command 12345: sleep 0.1 | 12345 command 12345: sleep 0.1 . builtin fork . builtin set '+x' . builtin shopt -s 'oil:upgrade' < wait < wait > wait > wait [1] Done PID 12345 [1] Done PID 12345 | fork 12345 | fork 12345 |
osh-cpp | 13 Background process with fork and & (nondeterministic) [osh-cpp stderr] Expected " . 12345 exec sleep 0.1\n . 12345 exec sleep 0.1\n ; process 12345: status 0\n ; process 12345: status 0\n. builtin fork\n. builtin set '+x'\n. builtin shopt -s 'oil:upgrade'\n< wait\n< wait\n> wait\n> wait\n[1] Done PID 12345\n[1] Done PID 12345\n| fork 12345\n| fork 12345\n" Got " ; 12345 process 12345: status 0\n ; 12345 process 12345: status 0\n ; process 12345: status 0\n ; process 12345: status 0\n | 12345 command 12345: sleep 0.1\n | 12345 command 12345: sleep 0.1\n. builtin fork\n. builtin set '+x'\n. builtin shopt -s 'oil:upgrade'\n< wait\n< wait\n> wait\n> wait\n[1] Done PID 12345\n[1] Done PID 12345\n| fork 12345\n| fork 12345\n" stdout: stderr: ; 12345 process 12345: status 0 ; 12345 process 12345: status 0 ; process 12345: status 0 ; process 12345: status 0 | 12345 command 12345: sleep 0.1 | 12345 command 12345: sleep 0.1 . builtin fork . builtin set '+x' . builtin shopt -s 'oil:upgrade' < wait < wait > wait > wait [1] Done PID 12345 [1] Done PID 12345 | fork 12345 | fork 12345 |