Results for var-op-bash.test.sh

statusbashoshosh_ALT
pass 644
FAIL 022
total666
casebashoshosh_ALTdescription
0pass pass pass Lower Case with , and ,,
1pass pass pass Upper Case with ^ and ^^
2pass FAIL FAIL Lower Case with constant string (VERY WEIRD)
detailsdetails
3pass FAIL FAIL Lower Case glob
detailsdetails
4pass pass pass ${x@Q}
5pass pass pass ${!prefix@} ${!prefix*} yields sorted array of var names
14 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

osh2 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: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 912, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 870, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 844, in AppBundleMain
    status = ShellMain('osh', argv0, main_argv, login_shell)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 662, in ShellMain
    status = main_loop.Batch(ex, c_parser, arena, nodes_out=nodes_out)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 163, in Batch
    is_return, is_fatal = ex.ExecuteAndCatch(node)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1784, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1729, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 981, in _Dispatch
    cmd_val = self.word_ev.EvalWordSequence2(words, allow_assign=True)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1512, in EvalWordSequence2
    self._EvalWordToParts(w, False, part_vals)  # not double quoted
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1117, in _EvalWordToParts
    self._EvalWordPart(p, part_vals, quoted=quoted, is_subst=is_subst)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1025, in _EvalWordPart
    self._EvalBracedVarSub(part, part_vals, quoted)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 811, in _EvalBracedVarSub
    val = self._ApplyUnarySuffixOp(val, part.suffix_op)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 529, in _ApplyUnarySuffixOp
    s = string_ops.DoUnarySuffixOp(val.s, op, arg_val.s)
  File "/home/andy/git/oilshell/oil/osh/string_ops.py", line 258, in DoUnarySuffixOp
    raise NotImplementedError("%s can't have an argument" % op.op_id)
NotImplementedError: 224 can't have an argument
osh_ALT2 Lower Case with constant string (VERY WEIRD)

[osh_ALT stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got ''
[osh_ALT status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 899, in _cpython_main_hook
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 870, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 844, in AppBundleMain
    status = ShellMain('osh', argv0, main_argv, login_shell)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 662, in ShellMain
    status = main_loop.Batch(ex, c_parser, arena, nodes_out=nodes_out)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 169, in Batch
    return status
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1784, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1729, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1034, in _Dispatch
    self.mem.PopTemp()
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1512, in EvalWordSequence2
    self._EvalWordToParts(w, False, part_vals)  # not double quoted
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1117, in _EvalWordToParts
    self._EvalWordPart(p, part_vals, quoted=quoted, is_subst=is_subst)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1102, in _EvalWordPart
    part_vals.append(part_val)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 823, in _EvalBracedVarSub
    replace_str = replace_val.s
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 529, in _ApplyUnarySuffixOp
    s = string_ops.DoUnarySuffixOp(val.s, op, arg_val.s)
  File "/home/andy/git/oilshell/oil/osh/string_ops.py", line 258, in DoUnarySuffixOp
    raise NotImplementedError("%s can't have an argument" % op.op_id)
NotImplementedError: 224 can't have an argument
FATAL: couldn't import from app bundle '/home/andy/git/oilshell/oil/_tmp/oil-tar-test/oil-0.7.0/_bin/osh' (1)
Stripping the oil.ovm binary may cause this error.
See https://github.com/oilshell/oil/issues/47
osh3 Lower Case glob

[osh stdout] Expected 'ABC DEF\nABC deF\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 912, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 870, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 844, in AppBundleMain
    status = ShellMain('osh', argv0, main_argv, login_shell)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 662, in ShellMain
    status = main_loop.Batch(ex, c_parser, arena, nodes_out=nodes_out)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 163, in Batch
    is_return, is_fatal = ex.ExecuteAndCatch(node)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1784, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1729, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 981, in _Dispatch
    cmd_val = self.word_ev.EvalWordSequence2(words, allow_assign=True)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1512, in EvalWordSequence2
    self._EvalWordToParts(w, False, part_vals)  # not double quoted
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1117, in _EvalWordToParts
    self._EvalWordPart(p, part_vals, quoted=quoted, is_subst=is_subst)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1025, in _EvalWordPart
    self._EvalBracedVarSub(part, part_vals, quoted)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 811, in _EvalBracedVarSub
    val = self._ApplyUnarySuffixOp(val, part.suffix_op)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 529, in _ApplyUnarySuffixOp
    s = string_ops.DoUnarySuffixOp(val.s, op, arg_val.s)
  File "/home/andy/git/oilshell/oil/osh/string_ops.py", line 352, in DoUnarySuffixOp
    raise NotImplementedError("Can't use %s with pattern" % op.op_id)
NotImplementedError: Can't use 224 with pattern
osh_ALT3 Lower Case glob

[osh_ALT stdout] Expected 'ABC DEF\nABC deF\n', got ''
[osh_ALT status] Expected 0, got 1

stdout:
stderr: 
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 899, in _cpython_main_hook
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 870, in main
    return AppBundleMain(argv)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 844, in AppBundleMain
    status = ShellMain('osh', argv0, main_argv, login_shell)
  File "/home/andy/git/oilshell/oil/bin/oil.py", line 662, in ShellMain
    status = main_loop.Batch(ex, c_parser, arena, nodes_out=nodes_out)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 169, in Batch
    return status
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1784, in ExecuteAndCatch
    status = self._Execute(node, fork_external=fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1729, in _Execute
    status, check_errexit = self._Dispatch(node, fork_external)
  File "/home/andy/git/oilshell/oil/osh/cmd_exec.py", line 1034, in _Dispatch
    self.mem.PopTemp()
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1512, in EvalWordSequence2
    self._EvalWordToParts(w, False, part_vals)  # not double quoted
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1117, in _EvalWordToParts
    self._EvalWordPart(p, part_vals, quoted=quoted, is_subst=is_subst)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 1102, in _EvalWordPart
    part_vals.append(part_val)
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 823, in _EvalBracedVarSub
    replace_str = replace_val.s
  File "/home/andy/git/oilshell/oil/osh/word_eval.py", line 529, in _ApplyUnarySuffixOp
    s = string_ops.DoUnarySuffixOp(val.s, op, arg_val.s)
  File "/home/andy/git/oilshell/oil/osh/string_ops.py", line 352, in DoUnarySuffixOp
    raise NotImplementedError("Can't use %s with pattern" % op.op_id)
NotImplementedError: Can't use 224 with pattern
FATAL: couldn't import from app bundle '/home/andy/git/oilshell/oil/_tmp/oil-tar-test/oil-0.7.0/_bin/osh' (1)
Stripping the oil.ovm binary may cause this error.
See https://github.com/oilshell/oil/issues/47