82 passed, 7 OK, 5 not implemented, 11 BUG, 6 failed, 0 timeouts, 0 cases skipped 6 failed under osh
zsh | 0 BASH_REMATCH stdout: status=0 [''] status=1 ['']stderr: |
osh | 0 BASH_REMATCH [osh stdout] Expected "status=0\n['foo123', 'foo', '123']\nstatus=1\n[]\n" Got 'status=0\n' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: status=0stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch status = self._DoSimple(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple allow_assign=True) File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2 self._EvalWordToParts(w, part_vals, EXTGLOB_FILES) File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart self._EvalDoubleQuoted(part.parts, part_vals) File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted self._EvalWordPart(p, part_vals, QUOTED) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub part_val = _ValueToPartValue(val, quoted or quoted2, part) File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue bash_impl.InternalStringArray_GetValues(val), quoted) NameError: global name 'bash_impl' is not defined |
zsh | 4 Regex quoted with single quotes stdout: truestderr: |
zsh | 5 Regex quoted with double quotes stdout: truestderr: |
zsh | 8 Double quoting pat variable -- again bash doesn't like it. stdout: truestderr: |
zsh | 10 Regex with == and not =~ is parse error, different lexer mode required stdout: stderr: |
zsh | 12 Malformed regex stdout: stderr: zsh: parse error near `)' |
zsh | 13 Regex with | stdout: stderr: zsh: parse error near `|' |
zsh | 14 Regex to match literal brackets [] stdout: truestderr: zsh: failed to compile regex: Unmatched [, [^, [:, [., or [= |
zsh | 15 Regex to match literals . ^ $ etc. stdout: true false false falsestderr: zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression |
bash-4 | 16 Unquoted { is a regex parse error stdout: status=2stderr: |
zsh | 16 Unquoted { is a regex parse error stdout: status=1stderr: zsh: failed to compile regex: Invalid preceding regular expression |
bash-4 | 17 Fatal error inside [[ =~ ]] stdout: status=1stderr: bash-4.4: line 1: 1 / 0 : division by 0 (error token is "0 ") |
zsh | 18 Quoted { and + stdout: yes ^ yes $ yes ) yes | --- yes . --- a 0 - 1 b 0 z 0 status=0stderr: zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Invalid preceding regular expression zsh: failed to compile regex: Unmatched ( or \( zsh: failed to compile regex: Trailing backslash |
zsh | 19 Escaped { stdout: stderr: zsh: failed to compile regex: Invalid preceding regular expression |
osh | 19 Escaped { [osh stdout] Expected "['$PA', '$', 'PA']\n", got '' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1824, in _Dispatch status = self._DoAndOr(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1206, in _DoAndOr status = self._Execute(child) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch status = self._DoSimple(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple allow_assign=True) File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2 self._EvalWordToParts(w, part_vals, EXTGLOB_FILES) File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart self._EvalDoubleQuoted(part.parts, part_vals) File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted self._EvalWordPart(p, part_vals, QUOTED) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub part_val = _ValueToPartValue(val, quoted or quoted2, part) File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue bash_impl.InternalStringArray_GetValues(val), quoted) NameError: global name 'bash_impl' is not defined |
zsh | 20 Escaped { stored in variable first stdout: ['']stderr: |
osh | 20 Escaped { stored in variable first [osh stdout] Expected "['$PA', '$', 'PA']\n", got '' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1824, in _Dispatch status = self._DoAndOr(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1206, in _DoAndOr status = self._Execute(child) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch status = self._DoSimple(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple allow_assign=True) File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2 self._EvalWordToParts(w, part_vals, EXTGLOB_FILES) File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart self._EvalDoubleQuoted(part.parts, part_vals) File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted self._EvalWordPart(p, part_vals, QUOTED) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub part_val = _ValueToPartValue(val, quoted or quoted2, part) File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue bash_impl.InternalStringArray_GetValues(val), quoted) NameError: global name 'bash_impl' is not defined |
zsh | 24 pattern a=(1) stdout: status=0stderr: zsh: x not found |
osh | 26 Bug: Nix idiom with closing ) next to pattern [osh stdout] Expected 'one\ntwo\n', got '' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1837, in _Dispatch status = self._DoIf(node) File "/home/uke/oil/osh/cmd_eval.py", line 1485, in _DoIf b = self._EvalCondition(if_arm.cond, if_arm.keyword) File "/home/uke/oil/osh/cmd_eval.py", line 685, in _EvalCondition cond_status = self._ExecuteList(cond) File "/home/uke/oil/osh/cmd_eval.py", line 2051, in _ExecuteList status = self._Execute(child) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1719, in _Dispatch status = self._Execute(node.child) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1733, in _Dispatch result = self.bool_ev.EvalB(node.expr) File "/home/uke/oil/osh/sh_expr_eval.py", line 1156, in EvalB b = self.EvalB(node.child) File "/home/uke/oil/osh/sh_expr_eval.py", line 1169, in EvalB if self.EvalB(node.left): File "/home/uke/oil/osh/sh_expr_eval.py", line 1231, in EvalB s1 = self._EvalCompoundWord(node.left) File "/home/uke/oil/osh/sh_expr_eval.py", line 1141, in _EvalCompoundWord val = self.word_ev.EvalWordToString(word, eval_flags) File "/home/uke/oil/osh/word_eval.py", line 2162, in EvalWordToString self._EvalWordPart(p, part_vals, 0) File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart self._EvalDoubleQuoted(part.parts, part_vals) File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted self._EvalWordPart(p, part_vals, QUOTED) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1746, in _EvalBracedVarSub val = self._JoinArray(val, quoted, vsub_state) File "/home/uke/oil/osh/word_eval.py", line 1478, in _JoinArray s for s in bash_impl.InternalStringArray_GetValues(val) NameError: global name 'bash_impl' is not defined |
zsh | 28 Multiple adjacent () groups stdout: [''] [''] [''] ['']stderr: zsh: parse error near `>>' zsh: parse error near `fi' zsh: parse error near `>>' zsh: parse error near `fi' zsh: parse error near `()' zsh: parse error near `fi' zsh: parse error near `()' zsh: parse error near `fi' |
osh | 28 Multiple adjacent () groups [osh stdout] Expected "['a-b-c-d', 'b', 'd']\n['ff', '', '']\n['zz', 'zz', '']\n['zz', 'z', 'z', '']\n" Got '' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1837, in _Dispatch status = self._DoIf(node) File "/home/uke/oil/osh/cmd_eval.py", line 1487, in _DoIf status = self._ExecuteList(if_arm.action) File "/home/uke/oil/osh/cmd_eval.py", line 2051, in _ExecuteList status = self._Execute(child) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1701, in _Dispatch status = self._DoSimple(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 904, in _DoSimple allow_assign=True) File "/home/uke/oil/osh/word_eval.py", line 2566, in EvalWordSequence2 self._EvalWordToParts(w, part_vals, EXTGLOB_FILES) File "/home/uke/oil/osh/word_eval.py", line 2048, in _EvalWordToParts self._EvalWordPart(p, word_part_vals, eval_flags) File "/home/uke/oil/osh/word_eval.py", line 1932, in _EvalWordPart self._EvalDoubleQuoted(part.parts, part_vals) File "/home/uke/oil/osh/word_eval.py", line 1453, in _EvalDoubleQuoted self._EvalWordPart(p, part_vals, QUOTED) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1750, in _EvalBracedVarSub part_val = _ValueToPartValue(val, quoted or quoted2, part) File "/home/uke/oil/osh/word_eval.py", line 231, in _ValueToPartValue bash_impl.InternalStringArray_GetValues(val), quoted) NameError: global name 'bash_impl' is not defined |
zsh | 29 unquoted [a b] as pattern, [a b|c] stdout: yes [ab]=0 [a b]=1 yes [a b]=0stderr: zsh: condition expected: a |
zsh | 30 c|a unquoted stdout: onestderr: zsh: parse error near `|' zsh: parse error near `fi' |
zsh | 31 Operator chars ; & but not | stdout: semi=1 semi paren=1 amp=1 pipe=1 pipe=1 angle=1 newline=1stderr: zsh: parse error: condition expected: ';' zsh: parse error near `)' zsh: parse error: condition expected: '&' zsh: parse error: condition expected: '|' zsh: parse error: condition expected: 'a' zsh: parse error near `|' zsh: parse error: condition expected: '<>' zsh: parse error near `b' |
zsh | 34 Parse error with 2 words stdout: onestderr: zsh: condition expected: a zsh: parse error near `fi' |
zsh | 35 make a lisp example stdout: status=1 m=stderr: zsh: parse error near `|' |
osh | 35 make a lisp example [osh stdout] Expected 'status=0\nm=(\n', got 'status=0\n' [osh status] Expected 0, got 1 [osh stderr] Found 'Traceback (most recent' stdout: status=0stderr: Traceback (most recent call last): File "/home/uke/oil/bin/oils_for_unix.py", line 202, in <module> sys.exit(main(sys.argv)) File "/home/uke/oil/bin/oils_for_unix.py", line 171, in main return AppBundleMain(argv) File "/home/uke/oil/bin/oils_for_unix.py", line 141, in AppBundleMain return shell.Main('osh', arg_r, environ, login_shell, loader, readline) File "/home/uke/oil/core/shell.py", line 1253, in Main cmd_flags=cmd_eval.IsMainProgram) File "/home/uke/oil/core/main_loop.py", line 336, in Batch was_parsed, status = Batch2(cmd_ev, c_parser, errfmt, cmd_flags=cmd_flags) File "/home/uke/oil/core/main_loop.py", line 401, in Batch2 is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags) File "/home/uke/oil/osh/cmd_eval.py", line 2175, in ExecuteAndCatch status = self._Execute(node) File "/home/uke/oil/osh/cmd_eval.py", line 1974, in _Execute status = self._Dispatch(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1711, in _Dispatch status = self._DoShAssignment(node, cmd_st) File "/home/uke/oil/osh/cmd_eval.py", line 1028, in _DoShAssignment rhs = self.word_ev.EvalRhsWord(pair.rhs) File "/home/uke/oil/osh/word_eval.py", line 2253, in EvalRhsWord return self.EvalWordToString(w) File "/home/uke/oil/osh/word_eval.py", line 2162, in EvalWordToString self._EvalWordPart(p, part_vals, 0) File "/home/uke/oil/osh/word_eval.py", line 1956, in _EvalWordPart self._EvalBracedVarSub(part, part_vals, quoted) File "/home/uke/oil/osh/word_eval.py", line 1661, in _EvalBracedVarSub val = self._EvalBracketOp(val, part, quoted, vsub_state, vtest_place) File "/home/uke/oil/osh/word_eval.py", line 1524, in _EvalBracketOp val = self._ArrayIndex(val, part, vtest_place) File "/home/uke/oil/osh/word_eval.py", line 1369, in _ArrayIndex s, error_code = bash_impl.InternalStringArray_GetElement( NameError: global name 'bash_impl' is not defined |
zsh | 36 Operators and space lose meaning inside () stdout: stderr: zsh: parse error near `<' |