spec test index / oilshell.org
status | dash | bash | mksh | zsh | osh | |
pass | 13 | 24 | 16 | 18 | 20 | |
ok | 0 | 0 | 1 | 0 | 0 | |
N-I | 10 | 0 | 5 | 3 | 0 | |
BUG | 1 | 0 | 2 | 3 | 0 | |
FAIL | 0 | 0 | 0 | 0 | 4 | |
total | 24 | 24 | 24 | 24 | 24 | |
case | dash | bash | mksh | zsh | osh | description |
0 | pass | pass | pass | pass | pass | $PWD is set |
1 | pass | pass | BUG | pass | pass | $PWD is not only set, but exported |
details | ||||||
2 | pass | pass | pass | BUG | pass | $HOME is NOT set |
details | ||||||
3 | pass | pass | pass | BUG | pass | $1 .. $9 are scoped, while $0 is not |
details | ||||||
4 | pass | pass | pass | pass | pass | $? |
5 | pass | pass | pass | pass | pass | $# |
6 | N-I | pass | N-I | pass | FAIL | $_ |
details | details | details | ||||
7 | pass | pass | pass | pass | pass | $$ looks like a PID |
8 | pass | pass | pass | pass | pass | $$ doesn't change with subshell or command sub |
9 | N-I | pass | pass | N-I | FAIL | $BASHPID DOES change with subshell and command sub |
details | details | details | ||||
10 | pass | pass | pass | pass | pass | Background PID $! looks like a PID |
11 | pass | pass | pass | pass | pass | $PPID |
12 | N-I | pass | pass | N-I | pass | $PIPESTATUS |
details | details | |||||
13 | N-I | pass | pass | pass | FAIL | $RANDOM |
details | details | |||||
14 | N-I | pass | N-I | pass | pass | $UID and $EUID |
details | details | |||||
15 | N-I | pass | N-I | pass | pass | $OSTYPE is non-empty |
details | details | |||||
16 | N-I | pass | N-I | N-I | pass | $HOSTNAME |
details | details | details | ||||
17 | BUG | pass | pass | BUG | pass | $LINENO is the current line, not line of function call |
details | details | |||||
18 | N-I | pass | N-I | pass | pass | $LINENO for [[ |
details | details | |||||
19 | N-I | pass | pass | pass | pass | $LINENO for (( |
details | ||||||
20 | pass | pass | ok | pass | pass | $LINENO in for loop |
details | ||||||
21 | pass | pass | pass | pass | pass | $LINENO in other for loops |
22 | N-I | pass | BUG | pass | FAIL | $LINENO in for (( loop |
details | details | details | ||||
23 | pass | pass | pass | pass | pass | $LINENO for assignment |
91 passed, 1 OK, 18 not implemented, 6 BUG, 4 failed, 0 timeouts, 0 cases skipped 4 failed under osh
mksh | 1 $PWD is not only set, but exported stdout: stderr: |
zsh | 2 $HOME is NOT set stdout: zsh sets HOMEstderr: |
zsh | 3 $1 .. $9 are scoped, while $0 is not stdout: func a bstderr: |
dash | 6 $_ stdout: histderr: |
mksh | 6 $_ stdout: histderr: |
osh | 6 $_ [osh stdout] Expected u'hi\nhi\n', got 'hi\n\n' stdout: histderr: |
dash | 9 $BASHPID DOES change with subshell and command sub stdout: stderr: empty BASHPID in parent |
zsh | 9 $BASHPID DOES change with subshell and command sub stdout: stderr: empty BASHPID in parent |
osh | 9 $BASHPID DOES change with subshell and command sub [osh stdout] Expected 'subshell OK\ncommand sub OK\n', got '' [osh status] Expected 3, got 1 stdout: stderr: empty BASHPID in parent |
dash | 12 $PIPESTATUS stdout: stderr: /home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: Bad substitution |
zsh | 12 $PIPESTATUS stdout: ['']stderr: |
dash | 13 $RANDOM stdout: 0stderr: |
osh | 13 $RANDOM [osh status] Expected 0, got 1 stdout: 0stderr: |
dash | 14 $UID and $EUID stdout: stderr: |
mksh | 14 $UID and $EUID stdout: stderr: |
dash | 15 $OSTYPE is non-empty stdout: status=1stderr: |
mksh | 15 $OSTYPE is non-empty stdout: status=1stderr: |
dash | 16 $HOSTNAME stdout: status=1stderr: |
mksh | 16 $HOSTNAME stdout: status=1stderr: |
zsh | 16 $HOSTNAME stdout: status=1stderr: |
dash | 17 $LINENO is the current line, not line of function call stdout: 1 ['2'] ['2'] ['4']stderr: |
zsh | 17 $LINENO is the current line, not line of function call stdout: 1 ['1'] ['1'] ['3']stderr: |
dash | 18 $LINENO for [[ stdout: onestderr: /home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: [[: not found |
mksh | 18 $LINENO for [[ stdout: onestderr: |
dash | 19 $LINENO for (( stdout: onestderr: /home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: x: not found |
mksh | 20 $LINENO in for loop stdout: one 1 zzzstderr: |
dash | 22 $LINENO in for (( loop stdout: onestderr: /home/andy/git/oilshell/oil/_tmp/spec-bin/dash: 2: Syntax error: Bad for loop variable |
mksh | 22 $LINENO in for (( loop stdout: onestderr: /home/andy/git/oilshell/oil/_tmp/spec-bin/mksh: <stdin>[2]: syntax error: '((' unexpected |
osh | 22 $LINENO in for (( loop [osh stdout] Expected 'one\n0\n1\n', got 'one\n0\n1\n2\n' stdout: one 0 1 2stderr: |