spec test index / oilshell.org
| status | dash | bash | mksh | zsh | osh | |
| pass | 3 | 3 | 3 | 3 | 7 | |
| ok | 2 | 4 | 2 | 1 | 0 | |
| N-I | 2 | 0 | 0 | 1 | 0 | |
| BUG | 0 | 0 | 2 | 2 | 0 | |
| total | 7 | 7 | 7 | 7 | 7 | |
| case | dash | bash | mksh | zsh | osh | description |
| 0 | N-I | ok | BUG | BUG | pass | history builtin usage |
| details | details | details | details | |||
| 1 | ok | ok | ok | ok | pass | Print shell strings with weird chars: set and printf %q and ${x@Q} |
| details | details | details | details | |||
| 2 | N-I | ok | ok | N-I | pass | Print shell strings with normal chars: set and printf %q and ${x@Q} |
| details | details | details | details | |||
| 3 | pass | pass | pass | pass | pass | time pipeline |
| 4 | pass | pass | pass | pass | pass | shift |
| 5 | ok | pass | pass | pass | pass | Shifting too far |
| details | ||||||
| 6 | pass | ok | BUG | BUG | pass | Invalid shift argument |
| details | details | details |
19 passed, 9 OK, 3 not implemented, 4 BUG, 0 failed, 0 timeouts, 0 cases skipped
| dash | 0 history builtin usage stdout: status=127 status=127 status=127 status=127 status=127stderr: dash: 1: history: not found dash: 3: history: not found dash: 5: history: not found dash: 7: history: not found dash: 9: history: not found |
| bash | 0 history builtin usage stdout: status=0 status=0 status=2 status=1 status=1stderr: bash: line 5: history: -5: invalid option history: usage: history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...] bash: line 7: history: f: numeric argument required bash: line 9: history: too: numeric argument required |
| mksh | 0 history builtin usage stdout: status=1 status=1 status=1 status=1 status=1stderr: mksh: fc: history functions not available mksh: <stdin>[3]: fc: history functions not available mksh: <stdin>[5]: fc: history functions not available mksh: <stdin>[7]: fc: history functions not available mksh: <stdin>[9]: fc: history functions not available |
| zsh | 0 history builtin usage stdout: status=1 status=1 status=1 status=1 status=1stderr: fc: no such event: 1 fc: no such event: 5 fc: no such event: 0 fc: event not found: f fc: event not found: too |
| dash | 1 Print shell strings with weird chars: set and printf %q and ${x@Q} stdout: stderr: |
| bash | 1 Print shell strings with weird chars: set and printf %q and ${x@Q} stdout: foo=$'a\nb\001c\'d' pf $'a\nb\001c\'d' @Q $'a\nb\001c\'d'stderr: |
| mksh | 1 Print shell strings with weird chars: set and printf %q and ${x@Q} stdout: stderr: |
| zsh | 1 Print shell strings with weird chars: set and printf %q and ${x@Q} stdout: stderr: |
| dash | 2 Print shell strings with normal chars: set and printf %q and ${x@Q} stdout: stderr: |
| bash | 2 Print shell strings with normal chars: set and printf %q and ${x@Q} stdout: foo=spam declare -- foo="spam" pf spam @Q 'spam'stderr: |
| mksh | 2 Print shell strings with normal chars: set and printf %q and ${x@Q} stdout: foo=spam typeset foo=spam pf spam @Q spamstderr: |
| zsh | 2 Print shell strings with normal chars: set and printf %q and ${x@Q} stdout: stderr: |
| dash | 5 Shifting too far stdout: stderr: dash: 2: shift: can't shift that many |
| bash | 6 Invalid shift argument stdout: stderr: bash: line 1: shift: ZZZ: numeric argument required |
| mksh | 6 Invalid shift argument stdout: stderr: |
| zsh | 6 Invalid shift argument stdout: stderr: |