spec test index / oilshell.org
status | ysh | ysh-cpp | |
FAIL | 6 | 6 | |
total | 6 | 6 | |
case | ysh | ysh-cpp | description |
0 | FAIL | FAIL | Shell Append += with Oil Values (issue #840) |
details | details | ||
1 | FAIL | FAIL | Shell ${x:-default} with Oil values (issue #954) |
details | details | ||
2 | FAIL | FAIL | Shell ${a[0]} with Oil values (issue #1092) |
details | details | ||
3 | FAIL | FAIL | Splice nested List |
details | details | ||
4 | FAIL | FAIL | Splice nested Dict |
details | details | ||
5 | FAIL | FAIL | Concatenate shell arrays and ${#a} |
details | details |
0 passed, 0 OK, 0 not implemented, 0 BUG, 12 failed, 0 timeouts, 0 cases skipped
ysh | 0 Shell Append += with Oil Values (issue #840) [ysh stdout] Expected '', got 'g=2\n' [ysh status] Expected 0, got 2 stdout: g=2stderr: g+=1 ^~~ [ stdin ]:5: Use const or var/setvar to assign in YSH (parse_sh_assign) |
ysh-cpp | 0 Shell Append += with Oil Values (issue #840) [ysh-cpp status] Expected 0, got 1 stdout: stderr: echo g=$g ^~ [ stdin ]:2: fatal: Undefined variable 'g' |
ysh | 1 Shell ${x:-default} with Oil values (issue #954) [ysh status] Expected 0, got 1 [ysh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 224, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 199, in main return AppBundleMain(argv) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 143, in AppBundleMain return shell.Main('ysh', arg_r, environ, login_shell, loader, readline) File "/home/andy/git/oilshell/oil/core/shell.py", line 910, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 348, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1790, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1616, in _Execute status = self._Dispatch(node, cmd_st) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 727, in _Dispatch allow_assign=True) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2157, in EvalWordSequence2 return self.SimpleEvalWordSequence2(words, allow_assign) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2117, in SimpleEvalWordSequence2 self._EvalWordToParts(w, part_vals, 0) # not quoted File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1715, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1613, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1355, in _EvalBracedVarSub vtest_place, part.token): File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 616, in _ApplyTestOp raise NotImplementedError(val.tag()) NotImplementedError: 15 |
ysh-cpp | 1 Shell ${x:-default} with Oil values (issue #954) [ysh-cpp stdout] Expected '', got 'mylist default\nmyint default\n' stdout: mylist default myint defaultstderr: |
ysh | 2 Shell ${a[0]} with Oil values (issue #1092) [ysh status] Expected 0, got 2 stdout: stderr: echo first ${a[0]} ^ [ stdin ]:2: POSIX shell arithmetic isn't allowed (parse_sh_arith) |
ysh-cpp | 2 Shell ${a[0]} with Oil values (issue #1092) [ysh-cpp status] Expected 0, got 2 stdout: stderr: echo first ${a[0]} ^ [ stdin ]:2: POSIX shell arithmetic isn't allowed (parse_sh_arith) |
ysh | 3 Splice nested List [ysh status] Expected 0, got 3 stdout: stderr: @mylist ^~~~~~~ [ stdin ]:3: fatal: Expected string-like value (Bool, Int, Str), but got <class 'pylib.collections_.OrderedDict'> |
ysh-cpp | 3 Splice nested List [ysh-cpp status] Expected 0, got 1 stdout: stderr: @mylist ^~~~~~~ [ stdin ]:3: fatal: Can't splice 'mylist' |
ysh | 4 Splice nested Dict [ysh status] Expected 0, got 1 [ysh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 224, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 199, in main return AppBundleMain(argv) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 143, in AppBundleMain return shell.Main('ysh', arg_r, environ, login_shell, loader, readline) File "/home/andy/git/oilshell/oil/core/shell.py", line 910, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 348, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1790, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1616, in _Execute status = self._Dispatch(node, cmd_st) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 727, in _Dispatch allow_assign=True) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2157, in EvalWordSequence2 return self.SimpleEvalWordSequence2(words, allow_assign) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2139, in SimpleEvalWordSequence2 strs.append(''.join(tmp)) # no split or glob TypeError: sequence item 0: expected string, list found |
ysh-cpp | 4 Splice nested Dict [ysh-cpp status] Expected 0, got 1 stdout: stderr: echo ${d[@]} ^ [ stdin ]:2: fatal: Undefined array 'd' |
ysh | 5 Concatenate shell arrays and ${#a} [ysh stdout] Expected '', got "len a 1\nlen b 1\na = (Cell exported:F readonly:F nameref:F val:(value.MaybeStrArray strs:[a]))\nc = (Cell exported:F readonly:F nameref:F val:(value.Obj obj:['a', 'b']))\n" [ysh status] Expected 0, got 1 [ysh stderr] Found 'Traceback (most recent' stdout: len a 1 len b 1 a = (Cell exported:F readonly:F nameref:F val:(value.MaybeStrArray strs:[a])) c = (Cell exported:F readonly:F nameref:F val:(value.Obj obj:['a', 'b']))stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 224, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 199, in main return AppBundleMain(argv) File "/home/andy/git/oilshell/oil/bin/oils_for_unix.py", line 143, in AppBundleMain return shell.Main('ysh', arg_r, environ, login_shell, loader, readline) File "/home/andy/git/oilshell/oil/core/shell.py", line 910, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 348, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1790, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1616, in _Execute status = self._Dispatch(node, cmd_st) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 727, in _Dispatch allow_assign=True) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2157, in EvalWordSequence2 return self.SimpleEvalWordSequence2(words, allow_assign) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 2117, in SimpleEvalWordSequence2 self._EvalWordToParts(w, part_vals, 0) # not quoted File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1715, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1613, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1301, in _EvalBracedVarSub val = self._Length(val, part.token) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 736, in _Length raise AssertionError() AssertionError |
ysh-cpp | 5 Concatenate shell arrays and ${#a} [ysh-cpp status] Expected 0, got 1 stdout: stderr: echo "len a ${#a[@]}" ^ [ stdin ]:4: fatal: Undefined array 'a' |