spec test index / oilshell.org
status | osh | osh_.py | osh_.cc | |
pass | 7 | 5 | 0 | |
FAIL | 2 | 4 | 9 | |
total | 9 | 9 | 9 | |
case | osh | osh_.py | osh_.cc | description |
0 | pass | pass | FAIL | Lower Case with , and ,, |
details | ||||
1 | pass | pass | FAIL | Upper Case with ^ and ^^ |
details | ||||
2 | FAIL | FAIL | FAIL | Lower Case with constant string (VERY WEIRD) |
details | details | details | ||
3 | FAIL | FAIL | FAIL | Lower Case glob |
details | details | details | ||
4 | pass | FAIL | FAIL | ${x@Q} |
details | details | |||
5 | pass | FAIL | FAIL | ${!prefix@} ${!prefix*} yields sorted array of var names |
details | details | |||
6 | pass | pass | FAIL | ${!prefix@} matches var name (regression) |
details | ||||
7 | pass | pass | FAIL | ${var@a} for attributes |
details | ||||
8 | pass | pass | FAIL | ${var@a} error conditions |
details |
12 passed, 0 OK, 0 not implemented, 0 BUG, 15 failed, 0 timeouts, 0 cases skipped 2 failed under osh
osh_.cc | 0 Lower Case with , and ,, [osh_.cc stdout] Expected 'aBC DEF\nabc def\nempty=\nempty=\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: mycpp/mylib.h:309: Str *Str::lower(): Assertion `0' failed. |
osh_.cc | 1 Upper Case with ^ and ^^ [osh_.cc stdout] Expected 'Abc def\nABC DEF\nempty=\nempty=\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: mycpp/mylib.h:305: Str *Str::upper(): Assertion `0' failed. |
osh | 2 Lower Case with constant string (VERY WEIRD) [osh stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got '' [osh status] Expected 0, got 1 stdout: stderr: echo ${x,A} ^~~~ [ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument |
osh_.py | 2 Lower Case with constant string (VERY WEIRD) [osh_.py stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got '' [osh_.py status] Expected 0, got 1 stdout: stderr: echo ${x,A} ^~~~ [ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument |
osh_.cc | 2 Lower Case with constant string (VERY WEIRD) [osh_.cc stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got '' [osh_.cc status] Expected 0, got 1 stdout: stderr: echo ${x,A} ^~~~ [ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument |
osh | 3 Lower Case glob [osh stdout] Expected 'ABC DEF\nABC deF\n', got '' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/oil.py", line 1007, in <module> sys.exit(main(sys.argv)) File "/home/andy/git/oilshell/oil/bin/oil.py", line 953, in main return AppBundleMain(argv) File "/home/andy/git/oilshell/oil/bin/oil.py", line 926, in AppBundleMain status = ShellMain('osh', argv0, main_argv, login_shell) File "/home/andy/git/oilshell/oil/bin/oil.py", line 757, in ShellMain status = main_loop.Batch(cmd_ev, c_parser, arena, is_main=True) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 165, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, optimize=optimize) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1450, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1334, in _Execute status, check_errexit = self._Dispatch(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 538, in _Dispatch cmd_val = self.word_ev.EvalWordSequence2(words, allow_assign=True) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1854, in EvalWordSequence2 self._EvalWordToParts(w, False, part_vals) # not double quoted File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1441, in _EvalWordToParts self._EvalWordPart(p, part_vals, quoted=quoted, is_subst=is_subst) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1334, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1087, in _EvalBracedVarSub val = self._ApplyUnarySuffixOp(val, op) File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 751, in _ApplyUnarySuffixOp s = string_ops.DoUnarySuffixOp(val.s, op, arg_val.s, extglob) File "/home/andy/git/oilshell/oil/osh/string_ops.py", line 356, in DoUnarySuffixOp raise NotImplementedError(ui.PrettyId(op.op_id)) NotImplementedError: Id.VOp1_Comma |
osh_.py | 3 Lower Case glob [osh_.py stdout] Expected 'ABC DEF\nABC deF\n', got '' [osh_.py status] Expected 0, got 1 stdout: stderr: FATAL: Id.VOp1_Comma |
osh_.cc | 3 Lower Case glob [osh_.cc stdout] Expected 'ABC DEF\nABC deF\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: terminate called after throwing an instance of 'NotImplementedError*' |
osh_.py | 4 ${x@Q} [osh_.py stdout] Expected 'OK\n', got '' [osh_.py status] Expected 0, got 1 [osh_.py stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 341, in <module> status = main(sys.argv) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 228, in main status = main_loop.Batch(cmd_ev, c_parser, arena, is_main=True) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 165, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, optimize=optimize) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1450, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1334, in _Execute status, check_errexit = self._Dispatch(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 573, in _Dispatch status = self._RunSimpleCommand(cmd_val, node.do_fork) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 481, in _RunSimpleCommand return self.shell_ex.RunSimpleCommand(cmd_val, do_fork) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 317, in RunSimpleCommand return self.RunBuiltin(builtin_id, cmd_val) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 302, in RunBuiltin builtin_func = self.builtins[builtin_id] KeyError: 4 |
osh_.cc | 4 ${x@Q} [osh_.cc stdout] Expected 'OK\n', got '' [osh_.cc status] Expected 0, got -11 stdout: stderr: |
osh_.py | 5 ${!prefix@} ${!prefix*} yields sorted array of var names [osh_.py stdout] Expected "['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n", got "(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[19 21 21 21 21])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[27 29 29 29 29])\n(cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[35 37])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[45 47 47 47 47])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[68 70 70 70 70])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[68 70 70 70 70])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[93 95 95 95 95])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[93 95 95 95 95])\n(cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[118 120])\n(cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[118 120])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[144 146 146 146 146])\n(cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[144 146 146 146 146])\n" stdout: (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[19 21 21 21 21]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[27 29 29 29 29]) (cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[35 37]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[45 47 47 47 47]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[68 70 70 70 70]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[68 70 70 70 70]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[93 95 95 95 95]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[93 95 95 95 95]) (cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[118 120]) (cmd_value.Argv argv:[argv.py 'Z ZIP ZOO ZOOM'] arg_spids:[118 120]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[144 146 146 146 146]) (cmd_value.Argv argv:[argv.py Z ZIP ZOO ZOOM] arg_spids:[144 146 146 146 146])stderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 5 ${!prefix@} ${!prefix*} yields sorted array of var names [osh_.cc stdout] Expected "['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z ZIP ZOO ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n['Z', 'ZIP', 'ZOO', 'ZOOM']\n", got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: mycpp/mylib.h:468: void List<Str *>::sort() [T = Str *]: Assertion `0' failed. |
osh_.cc | 6 ${!prefix@} matches var name (regression) [osh_.cc stdout] Expected 'hello1 hello2 hello3\nhello hello1 hello2 hello3\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: mycpp/mylib.h:468: void List<Str *>::sort() [T = Str *]: Assertion `0' failed. |
osh_.cc | 7 ${var@a} for attributes [osh_.cc stdout] Expected 'a\nar\nrx\n', got 'a\na\n\n' stdout: a astderr: |
osh_.cc | 8 ${var@a} error conditions [osh_.cc stdout] Expected '[]\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: cpp/libc.h:37: List<Str *> *libc::glob(Str *): Assertion `0' failed. |