Results for ysh-with-sh.test.sh

statusyshysh-cpp
FAIL 66
total66
caseyshysh-cppdescription
0FAIL FAIL Shell Append += with Oil Values (issue #840)
detailsdetails
1FAIL FAIL Shell ${x:-default} with Oil values (issue #954)
detailsdetails
2FAIL FAIL Shell ${a[0]} with Oil values (issue #1092)
detailsdetails
3FAIL FAIL Splice nested List
detailsdetails
4FAIL FAIL Splice nested Dict
detailsdetails
5FAIL FAIL Concatenate shell arrays and ${#a}
detailsdetails
0 passed, 0 OK, 0 not implemented, 0 BUG, 12 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

ysh0 Shell Append += with Oil Values (issue #840)

[ysh stdout] Expected '', got 'g=2\n'
[ysh status] Expected 0, got 2

stdout:
g=2
stderr:
  g+=1
  ^~~
[ stdin ]:5: Use const or var/setvar to assign in YSH (parse_sh_assign)
ysh-cpp0 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'
ysh1 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-cpp1 Shell ${x:-default} with Oil values (issue #954)

[ysh-cpp stdout] Expected '', got 'mylist default\nmyint default\n'

stdout:
mylist default
myint default
stderr:
ysh2 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-cpp2 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)
ysh3 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-cpp3 Splice nested List

[ysh-cpp status] Expected 0, got 1

stdout:
stderr: 
  @mylist
  ^~~~~~~
[ stdin ]:3: fatal: Can't splice 'mylist'
ysh4 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-cpp4 Splice nested Dict

[ysh-cpp status] Expected 0, got 1

stdout:
stderr: 
  echo ${d[@]}
         ^
[ stdin ]:2: fatal: Undefined array 'd'
ysh5 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-cpp5 Concatenate shell arrays and ${#a}

[ysh-cpp status] Expected 0, got 1

stdout:
stderr: 
  echo "len a ${#a[@]}"
                 ^
[ stdin ]:4: fatal: Undefined array 'a'