status | bash | mksh | ksh | toysh | sush | brush | osh | |
pass | 3 | 1 | 1 | 0 | 1 | 3 | 2 | |
FAIL | 4 | 6 | 6 | 7 | 6 | 4 | 5 | |
total | 7 | 7 | 7 | 7 | 7 | 7 | 7 | |
case | bash | mksh | ksh | toysh | sush | brush | osh | description |
0 | pass | pass | pass | FAIL | pass | pass | pass | TODO: SETUP should be shared |
details | ||||||||
1 | pass | FAIL | FAIL | FAIL | FAIL | pass | FAIL | retrieve key |
details | details | details | details | details | ||||
2 | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | set key |
details | details | details | details | details | details | details | ||
3 | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | iterate over keys |
details | details | details | details | details | details | details | ||
4 | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | iterate over both keys and values |
details | details | details | details | details | details | details | ||
5 | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | FAIL | get length |
details | details | details | details | details | details | details | ||
6 | pass | FAIL | FAIL | FAIL | FAIL | pass | pass | index by integer does not work |
details | details | details | details |
11 passed, 0 OK, 0 not implemented, 0 BUG, 38 failed, 0 timeouts, 0 cases skipped 5 failed under osh
toysh | 0 TODO: SETUP should be shared [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: aa |
mksh | 1 retrieve key [mksh stdout] Expected 'b\n', got 'aa\n' stdout: aastderr: mksh: <stdin>[1]: typeset: -A: unknown option |
ksh | 1 retrieve key [ksh stdout] Expected 'b\n', got 'aa\n' stdout: aastderr: E: ksh: <stdin>[1]: typeset: -A: unknown option |
toysh | 1 retrieve key [toysh stdout] Expected 'b\n', got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: aa |
sush | 1 retrieve key [sush stdout] Expected 'b\n', got '\n' stdout: stderr: |
osh | 1 retrieve key [osh stdout] Expected 'b\n', got '' [osh status] Expected 0, got 1 stdout: stderr: echo ${a[aa]} ^~ [ stdin ]:3: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) |
bash | 2 set key [bash stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['c', 'b', 'XX', 'bar']\n" stdout: ['c', 'b', 'XX', 'bar']stderr: |
mksh | 2 set key [mksh stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['XX', 'b', 'foo', 'bar', 'a+1', 'c']\n" stdout: ['XX', 'b', 'foo', 'bar', 'a+1', 'c']stderr: mksh: <stdin>[1]: typeset: -A: unknown option |
ksh | 2 set key [ksh stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['XX', 'b', 'foo', 'bar', 'a+1', 'c']\n" stdout: ['XX', 'b', 'foo', 'bar', 'a+1', 'c']stderr: E: ksh: <stdin>[1]: typeset: -A: unknown option |
toysh | 2 set key [toysh stdout] Expected "['bar', 'b', 'c', 'XX']\n", got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: aa |
sush | 2 set key [sush stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['aa', 'b', 'foo', 'bar', 'a+1', 'c', 'XX']\n" stdout: ['aa', 'b', 'foo', 'bar', 'a+1', 'c', 'XX']stderr: |
brush | 2 set key [brush stdout] Expected "['bar', 'b', 'c', 'XX']\n", got "['XX', 'c', 'b', 'bar']\n" stdout: ['XX', 'c', 'b', 'bar']stderr: |
osh | 2 set key [osh stdout] Expected "['bar', 'b', 'c', 'XX']\n", got '' [osh status] Expected 0, got 1 stdout: stderr: a[X]=XX ^~ [ stdin ]:3: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) |
bash | 3 iterate over keys [bash stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [bash status] Expected 0, got 1 stdout: stderr: bash: line 3: ${(@k)assoc}: bad substitution |
mksh | 3 iterate over keys [mksh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [mksh status] Expected 0, got 1 stdout: stderr: mksh: <stdin>[1]: typeset: -A: unknown option mksh: <stdin>[5]: ${(@k)assoc}: bad substitution |
ksh | 3 iterate over keys [ksh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [ksh status] Expected 0, got 1 stdout: stderr: E: ksh: <stdin>[1]: typeset: -A: unknown option E: ksh: <stdin>[5]: ${(@k)assoc}: bad substitution |
toysh | 3 iterate over keys [toysh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: k1 |
sush | 3 iterate over keys [sush stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [sush status] Expected 0, got 1 stdout: stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 3: `${(@k)assoc}': bad substitution |
brush | 3 iterate over keys [brush stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '${(@k)assoc}: [${(@k)assoc}]\n' stdout: ${(@k)assoc}: [${(@k)assoc}]stderr: |
osh | 3 iterate over keys [osh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [osh status] Expected 0, got 1 stdout: stderr: for k in "${(@k)assoc}"; do ^~~~~~ [ stdin ]:3: fatal: ZSH var subs are parsed, but can't be evaluated |
bash | 4 iterate over both keys and values [bash stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [bash status] Expected 0, got 2 stdout: stderr: bash: line 3: syntax error near unexpected token `v' bash: line 3: `for k v ("${(@kv)assoc}"); do' |
mksh | 4 iterate over both keys and values [mksh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [mksh status] Expected 0, got 1 stdout: stderr: mksh: <stdin>[1]: typeset: -A: unknown option mksh: <stdin>[3]: syntax error: 'v' unexpected |
ksh | 4 iterate over both keys and values [ksh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [ksh status] Expected 0, got 1 stdout: stderr: E: ksh: <stdin>[1]: typeset: -A: unknown option E: ksh: <stdin>[3]: syntax error: unexpected 'v' |
toysh | 4 iterate over both keys and values [toysh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: k1 |
sush | 4 iterate over both keys and values [sush stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got ': \n' [sush status] Expected 0, got 2 stdout: :stderr: /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 4: Unexpected token: v /home/andy/git/oils-for-unix/oils/../../shells/rusty_bash/target/release/sush: line 6: Unexpected token: done |
brush | 4 iterate over both keys and values [brush stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got ': \n' [brush status] Expected 0, got 2 stdout: :stderr: [31mERROR[0m main: syntax error near token `v' (line 1 col 7) [31mERROR[0m main: syntax error near token ` ' (line 1 col 5) |
osh | 4 iterate over both keys and values [osh stdout] Expected 'k1: v1\nk2: v2\nk3: v3\n', got '' [osh status] Expected 0, got 2 stdout: stderr: for k v ("${(@kv)assoc}"); do ^ [ stdin ]:3: Unexpected word after for loop variable |
bash | 5 get length [bash stdout] Expected '3 2\n', got '0 2\n' stdout: 0 2stderr: |
mksh | 5 get length [mksh stdout] Expected '3 2\n', got '2 2\n' stdout: 2 2stderr: mksh: <stdin>[1]: typeset: -A: unknown option |
ksh | 5 get length [ksh stdout] Expected '3 2\n', got '2 2\n' stdout: 2 2stderr: E: ksh: <stdin>[1]: typeset: -A: unknown option |
toysh | 5 get length [toysh stdout] Expected '3 2\n', got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: k1 |
sush | 5 get length [sush stdout] Expected '3 2\n', got '2 0\n' stdout: 2 0stderr: |
brush | 5 get length [brush stdout] Expected '3 2\n', got '0 2\n' stdout: 0 2stderr: |
osh | 5 get length [osh stdout] Expected '3 2\n', got '' [osh status] Expected 0, got 1 stdout: stderr: echo ${#assoc} ${#assoc[k1]} ^~ [ stdin ]:3: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101) |
mksh | 6 index by integer does not work [mksh stdout] Expected "['']\n", got "['v1']\n" stdout: ['v1']stderr: mksh: <stdin>[1]: typeset: -A: unknown option |
ksh | 6 index by integer does not work [ksh stdout] Expected "['']\n", got "['v1']\n" stdout: ['v1']stderr: E: ksh: <stdin>[1]: typeset: -A: unknown option |
toysh | 6 index by integer does not work [toysh stdout] Expected "['']\n", got '' [toysh status] Expected 0, got 2 stdout: stderr: sh: typeset: No such file or directory main: line 2: sh: syntax error: k1 |
sush | 6 index by integer does not work [sush stdout] Expected "['']\n", got "['v1']\n" stdout: ['v1']stderr: |