| case | dash | bash | mksh | osh | osh_ALT | description |
| 0 | pass | pass | pass | pass | pass | wait with nothing to wait for |
| 1 | ok | pass | ok | pass | pass | wait -n with nothing to wait for |
| details | details | |||||
| 2 | ok | pass | pass | pass | pass | wait with invalid job ID |
| details | ||||||
| 3 | ok | pass | pass | pass | pass | wait with invalid PID |
| details | ||||||
| 4 | pass | pass | pass | pass | pass | Builtin in background |
| 5 | pass | pass | pass | pass | pass | External command in background |
| 6 | pass | pass | pass | pass | pass | Pipeline in Background |
| 7 | N-I | BUG | N-I | pass | pass | Wait sets PIPESTATUS |
| details | details | details | ||||
| 8 | pass | pass | pass | pass | pass | Brace group in background, wait all |
| 9 | pass | pass | pass | pass | pass | Wait on background process PID |
| 10 | pass | pass | pass | pass | pass | Wait on multiple specific IDs returns last status |
| 11 | N-I | pass | N-I | pass | pass | wait -n |
| details | details | |||||
| 12 | pass | pass | pass | pass | pass | Async for loop |
| 13 | pass | pass | pass | pass | pass | Background process doesn't affect parent |
61 passed, 4 ok, 4 known unimplemented, 1 known bugs, 0 failed, 0 skipped
| dash | 1 wait -n with nothing to wait for stdout: stderr: /bin/dash: 1: wait: Illegal option -n |
| mksh | 1 wait -n with nothing to wait for stdout: stderr: /bin/mksh: <stdin>[1]: wait: -n: unknown option |
| dash | 2 wait with invalid job ID stdout: stderr: /bin/dash: 1: wait: No such job: %nonexistent |
| dash | 3 wait with invalid PID stdout: stderr: /bin/dash: 1: wait: No such job: %nonexistent |
| dash | 7 Wait sets PIPESTATUS stdout: stderr: /bin/dash: 2: Bad substitution |
| bash | 7 Wait sets PIPESTATUS stdout: pipestatus= status=99 pipestatus=0stderr: |
| mksh | 7 Wait sets PIPESTATUS stdout: pipestatus=0 status=99 pipestatus=0stderr: |
| dash | 11 wait -n stdout: status=2 status=2stderr: /bin/dash: 3: wait: Illegal option -n /bin/dash: 5: wait: Illegal option -n |
| mksh | 11 wait -n stdout: status=1 status=1stderr: /bin/mksh: <stdin>[3]: wait: -n: unknown option /bin/mksh: <stdin>[5]: wait: -n: unknown option |