Results for dparen.test.sh

statusbash-4mkshzshosh
pass 1410613
ok 0011
N-I 0560
BUG 1020
FAIL 0001
total15151515
casebash-4mkshzshoshdescription
0pass pass pass pass (( )) result
1pass pass pass pass negative number is true
2pass pass pass pass (( )) in if statement
3pass pass pass pass (( ))
4pass pass ok pass (( )) with arrays
details
5pass pass pass pass (( )) with error
6pass pass N-I pass bash and mksh: V in (( a[K] = V )) gets coerced to integer
details
7pass N-I N-I ok bash: K in (( A[K] = V )) is a constant string
detailsdetailsdetails
8BUG pass BUG pass BUG: (( V = A[K] )) doesn't retrieve the right value
detailsdetails
9pass N-I N-I pass bash: V in (( A["K"] = V )) gets coerced to integer
detailsdetails
10pass N-I N-I pass literal strings inside (( ))
detailsdetails
11pass pass pass FAIL (( )) with redirect
details
12pass pass BUG pass Assigning whole raray (( b = a ))
details
13pass N-I N-I pass set associative array
detailsdetails
14pass N-I N-I pass Example of incrementing associative array entry with var key (ble.sh)
detailsdetails
43 passed, 2 OK, 11 not implemented, 3 BUG, 1 failed, 0 timeouts, 0 cases skipped
1 failed under osh

Details on runs that didn't PASS

zsh4 (( )) with arrays

stdout:
9
stderr:
zsh6 bash and mksh: V in (( a[K] = V )) gets coerced to integer

stdout:
stderr: 
zsh: command not found: shopt
zsh: a: assignment to invalid subscript range
zsh: no matches found: a["key"]=
mksh7 bash: K in (( A[K] = V )) is a constant string

stdout:
stderr: 
mksh: <stdin>[3]: typeset: -A: unknown option
mksh: <stdin>[6]: "5": unexpected '"'
zsh7 bash: K in (( A[K] = V )) is a constant string

stdout:
stderr: 
zsh: no matches found: A[5]=
osh7 bash: K in (( A[K] = V )) is a constant string

stdout:
stderr: 
  (( A[K] = V ))
      ^
[ stdin ]:4: fatal: Assoc array keys must be strings: $x 'x' "$x" etc. (OILS-ERR-101)
bash-48 BUG: (( V = A[K] )) doesn't retrieve the right value

stdout:
V=0
stderr:
zsh8 BUG: (( V = A[K] )) doesn't retrieve the right value

stdout:
V=0
stderr:
mksh9 bash: V in (( A["K"] = V )) gets coerced to integer

stdout:
stderr: 
mksh: <stdin>[1]: shopt: not found
mksh: <stdin>[4]: typeset: -A: unknown option
zsh9 bash: V in (( A["K"] = V )) gets coerced to integer

stdout:
stderr: 
zsh: command not found: shopt
zsh: no matches found: A["key"]=
mksh10 literal strings inside (( ))

stdout:
0
stderr:
mksh: <stdin>[1]: declare: not found
zsh10 literal strings inside (( ))

stdout:
42
stderr:
zsh: bad math expression: operand expected at `'y' '
osh11 (( )) with redirect

[osh stdout] Expected '52\n--\nSTDERR\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 1875, in _Dispatch
    status = self._DoRedirect(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1648, in _DoRedirect
    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 1747, in _Dispatch
    i = self.arith_ev.EvalToBigInt(node.child)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 557, in EvalToBigInt
    val = self.Eval(node)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 647, in Eval
    rhs_big = self.EvalToBigInt(node.right)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 557, in EvalToBigInt
    val = self.Eval(node)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 826, in Eval
    lhs_big = self.EvalToBigInt(node.left)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 557, in EvalToBigInt
    val = self.Eval(node)
  File "/home/uke/oil/osh/sh_expr_eval.py", line 609, in Eval
    return self.word_ev.EvalWordToString(w)
  File "/home/uke/oil/osh/word_eval.py", line 2103, in EvalWordToString
    self._EvalWordPart(p, part_vals, 0)
  File "/home/uke/oil/osh/word_eval.py", line 1881, in _EvalWordPart
    quoted)  # type: part_value_t
  File "/home/uke/oil/osh/word_eval.py", line 2629, in _EvalCommandSub
    stdout_str = self.shell_ex.RunCommandSub(cs_part)
  File "/home/uke/oil/core/executor.py", line 691, in RunCommandSub
    status, stdout_str, stderr_str = self.CaptureStdout(node)
  File "/home/uke/oil/core/executor.py", line 619, in CaptureStdout
    fds, w, exc = select.select([r,r2], [], [r,r2], -1)
NameError: global name 'select' is not defined
zsh12 Assigning whole raray (( b = a ))

stdout:
4 5 6

stderr:
zsh: bad math expression: operator expected at `5 6'
mksh13 set associative array

stdout:
stderr: 
mksh: <stdin>[1]: syntax error: '(' unexpected
zsh13 set associative array

stdout:
0
stderr:
zsh: no matches found: [foo]=bar
mksh14 Example of incrementing associative array entry with var key (ble.sh)

stdout:
stderr: 
mksh: <stdin>[1]: syntax error: '(' unexpected
zsh14 Example of incrementing associative array entry with var key (ble.sh)

stdout:
stderr: 
zsh: no matches found: [foo]=42
zsh: A: assignment to invalid subscript range
zsh: bad math expression: operand expected at `'foo''