spec test index / oilshell.org
status | dash | bash | mksh | osh | osh_ALT | |
pass | 13 | 17 | 15 | 16 | 16 | |
ok | 1 | 1 | 0 | 0 | 0 | |
N-I | 3 | 0 | 2 | 0 | 0 | |
BUG | 1 | 0 | 1 | 0 | 0 | |
FAIL | 0 | 0 | 0 | 2 | 2 | |
total | 18 | 18 | 18 | 18 | 18 | |
case | dash | bash | mksh | osh | osh_ALT | description |
0 | pass | pass | pass | pass | pass | wait with nothing to wait for |
1 | N-I | pass | N-I | pass | pass | wait -n with nothing to wait for |
details | details | |||||
2 | ok | pass | pass | FAIL | FAIL | wait with jobspec syntax %nonexistent |
details | details | details | ||||
3 | pass | pass | pass | pass | pass | wait with invalid PID |
4 | pass | ok | BUG | pass | pass | wait with invalid arg |
details | details | |||||
5 | pass | pass | pass | pass | pass | Builtin in background |
6 | pass | pass | pass | pass | pass | External command in background |
7 | pass | pass | pass | pass | pass | Pipeline in Background |
8 | N-I | pass | pass | FAIL | FAIL | Wait for job doesn't support PIPESTATUS |
details | details | details | ||||
9 | pass | pass | pass | pass | pass | Brace group in background, wait all |
10 | pass | pass | pass | pass | pass | Wait on background process PID |
11 | pass | pass | pass | pass | pass | Wait on multiple specific IDs returns last status |
12 | N-I | pass | N-I | pass | pass | wait -n |
details | details | |||||
13 | pass | pass | pass | pass | pass | Async for loop |
14 | pass | pass | pass | pass | pass | Background process doesn't affect parent |
15 | pass | pass | pass | pass | pass | Background process and then a singleton pipeline |
16 | BUG | pass | pass | pass | pass | jobs prints one line per job |
details | ||||||
17 | pass | pass | pass | pass | pass | jobs -p prints one line per job |
77 passed, 2 OK, 5 not implemented, 2 BUG, 2 failed, 0 timeouts, 0 cases skipped 2 failed under osh
dash | 1 wait -n with nothing to wait for stdout: stderr: dash: 1: wait: Illegal option -n |
mksh | 1 wait -n with nothing to wait for stdout: stderr: mksh: <stdin>[1]: wait: -n: unknown option |
dash | 2 wait with jobspec syntax %nonexistent stdout: stderr: dash: 1: wait: No such job: %nonexistent |
osh | 2 wait with jobspec syntax %nonexistent [osh status] Expected 127, got 2 stdout: stderr: wait %nonexistent ^ [ stdin ]:1: 'wait' expected PID or jobspec, got '%nonexistent' |
osh_ALT | 2 wait with jobspec syntax %nonexistent [osh_ALT status] Expected 127, got 2 stdout: stderr: wait %nonexistent ^ [ stdin ]:1: 'wait' expected PID or jobspec, got '%nonexistent' |
bash | 4 wait with invalid arg stdout: stderr: bash: line 1: wait: `zzz': not a pid or valid job spec |
mksh | 4 wait with invalid arg stdout: stderr: mksh: <stdin>[1]: wait: zzz: argument must be %job or process id |
dash | 8 Wait for job doesn't support PIPESTATUS stdout: stderr: dash: 2: Bad substitution |
osh | 8 Wait for job doesn't support PIPESTATUS [osh stdout] Expected 'status=1 pipestatus=55 1\nstatus=0 pipestatus=0\nstatus=1 pipestatus=1\n' Got 'status=1 pipestatus=141 1\nstatus=0 pipestatus=141 1\nstatus=1 pipestatus=141 1\n' stdout: status=1 pipestatus=141 1 status=0 pipestatus=141 1 status=1 pipestatus=141 1stderr: [1] Done PGID 23007 |
osh_ALT | 8 Wait for job doesn't support PIPESTATUS [osh_ALT stdout] Expected 'status=1 pipestatus=55 1\nstatus=0 pipestatus=0\nstatus=1 pipestatus=1\n' Got 'status=1 pipestatus=141 1\nstatus=0 pipestatus=141 1\nstatus=1 pipestatus=141 1\n' stdout: status=1 pipestatus=141 1 status=0 pipestatus=141 1 status=1 pipestatus=141 1stderr: [1] Done PGID 23011 |
dash | 12 wait -n stdout: stderr: |
mksh | 12 wait -n stdout: stderr: |
dash | 16 jobs prints one line per job stdout: 0stderr: |