spec test index / oilshell.org
case | dash | bash | mksh | osh | osh_ALT | description |
0 | pass | pass | pass | pass | pass | echo dashes |
1 | N-I | pass | pass | FAIL | FAIL | echo -en |
details | details | details | ||||
2 | BUG | pass | BUG | pass | pass | echo -ez (invalid flag) |
details | details | |||||
3 | pass | pass | pass | pass | pass | exec builtin |
4 | pass | pass | pass | pass | pass | exec builtin with redirects |
5 | pass | pass | pass | pass | pass | exec builtin with here doc |
6 | pass | pass | pass | pass | pass | cd and $PWD |
7 | pass | pass | pass | pass | pass | $OLDPWD |
8 | pass | pass | pass | pass | pass | cd with no arguments |
9 | ok | pass | ok | pass | pass | cd to nonexistent dir |
details | details | |||||
10 | N-I | pass | N-I | pass | pass | pushd/popd |
details | details | |||||
11 | pass | pass | pass | pass | pass | Eval |
12 | pass | pass | pass | pass | pass | Source |
13 | ok | pass | pass | pass | pass | Source nonexistent |
details | ||||||
14 | ok | ok | pass | pass | pass | Source with no arguments |
details | details | |||||
15 | pass | pass | pass | pass | pass | Exit builtin |
16 | ok | ok | pass | pass | pass | Exit builtin with invalid arg |
details | details | |||||
17 | BUG | pass | ok | pass | pass | Exit builtin with too many args |
details | details | |||||
18 | BUG | pass | pass | pass | pass | time block |
details | ||||||
19 | pass | pass | pass | pass | pass | time pipeline |
20 | pass | pass | pass | pass | pass | shift |
21 | ok | pass | pass | pass | pass | Shifting too far |
details | ||||||
22 | ok | pass | BUG | pass | pass | Invalid shift argument |
details | details | |||||
23 | pass | pass | pass | pass | pass | Read builtin |
24 | pass | pass | pass | pass | pass | Read builtin with no newline. |
25 | pass | pass | pass | pass | pass | Read builtin with multiple variables |
26 | pass | pass | pass | pass | pass | Read builtin with not enough variables |
27 | pass | pass | pass | pass | pass | get umask |
28 | N-I | pass | pass | pass | pass | Read -n (with $REPLY) |
details | ||||||
29 | pass | pass | pass | FAIL | FAIL | read -r ignores backslashes |
details | details | |||||
30 | pass | pass | pass | pass | pass | get umask |
31 | pass | pass | pass | pass | pass | set umask in octal |
32 | pass | pass | pass | FAIL | FAIL | set umask symbolically |
details | details |
140 passed, 10 ok, 4 known unimplemented, 5 known bugs, 3 failed, 0 skipped
dash | 1 echo -en stdout: -en abc defstderr: |
osh | 1 echo -en [osh stdout] Expected u'abc\ndef\n', got 'abc\\ndef\\n' stdout: abc\ndef\nstderr: osh warning: *** echo -e not implemented *** |
osh_ALT | 1 echo -en [osh_ALT stdout] Expected u'abc\ndef\n', got 'abc\\ndef\\n' stdout: abc\ndef\nstderr: osh warning: *** echo -e not implemented *** |
dash | 2 echo -ez (invalid flag) stdout: -ez abcstderr: |
mksh | 2 echo -ez (invalid flag) stdout: -ez abcstderr: |
dash | 9 cd to nonexistent dir stdout: status=2stderr: /bin/dash: 1: cd: can't cd to /nonexistent/dir |
mksh | 9 cd to nonexistent dir stdout: status=2stderr: /bin/mksh: <stdin>[1]: cd: /nonexistent/dir: No such file or directory |
dash | 10 pushd/popd stdout: stderr: /bin/dash: 3: pushd: not found |
mksh | 10 pushd/popd stdout: stderr: /bin/mksh: <stdin>[3]: pushd: not found |
dash | 13 Source nonexistent stdout: status=127stderr: /bin/dash: 1: source: not found |
dash | 14 Source with no arguments stdout: status=127stderr: /bin/dash: 1: source: not found |
bash | 14 Source with no arguments stdout: status=2stderr: /bin/bash: line 1: source: filename argument required source: usage: source filename [arguments] |
dash | 16 Exit builtin with invalid arg stdout: stderr: /bin/dash: 1: exit: Illegal number: invalid |
bash | 16 Exit builtin with invalid arg stdout: stderr: /bin/bash: line 1: exit: invalid: numeric argument required |
dash | 17 Exit builtin with too many args stdout: stderr: |
mksh | 17 Exit builtin with too many args stdout: stderr: /bin/mksh: <stdin>[1]: exit: too many arguments |
dash | 18 time block stdout: stderr: time: cannot run {: No such file or directory Command exited with non-zero status 127 0.00user 0.00system 0:00.00elapsed ?%CPU (0avgtext+0avgdata 1176maxresident)k 0inputs+0outputs (0major+28minor)pagefaults 0swaps /bin/dash: 7: Syntax error: "}" unexpected |
dash | 21 Shifting too far stdout: stderr: /bin/dash: 2: shift: can't shift that many |
dash | 22 Invalid shift argument stdout: stderr: /bin/dash: 1: shift: Illegal number: ZZZ |
mksh | 22 Invalid shift argument stdout: stderr: |
dash | 28 Read -n (with $REPLY) stdout: []stderr: /bin/dash: 2: read: Illegal option -n /bin/dash: 3: read: Illegal option -n |
osh | 29 read -r ignores backslashes [osh stdout] Expected "['one two', 'one\\\\ two']\n", got "['one\\\\ two', 'one\\\\ two']\n" stdout: ['one\\ two', 'one\\ two']stderr: osh warning: *** read without -r not implemented *** |
osh_ALT | 29 read -r ignores backslashes [osh_ALT stdout] Expected "['one two', 'one\\\\ two']\n", got "['one\\\\ two', 'one\\\\ two']\n" stdout: ['one\\ two', 'one\\ two']stderr: osh warning: *** read without -r not implemented *** |
osh | 32 set umask symbolically [osh stdout] Expected u'664\n644\n', got '664\n664\n' [osh stderr] Expected u'', got 'osh warning: *** umask with symbolic input not implemented ***\n' stdout: 664 664stderr: osh warning: *** umask with symbolic input not implemented *** |
osh_ALT | 32 set umask symbolically [osh_ALT stdout] Expected u'664\n644\n', got '664\n664\n' [osh_ALT stderr] Expected u'', got 'osh warning: *** umask with symbolic input not implemented ***\n' stdout: 664 664stderr: osh warning: *** umask with symbolic input not implemented *** |