Results for toysh-posix.test.sh

statusoshosh_.pyosh_.cc
pass 171616
ok 222
FAIL 344
total222222
caseoshosh_.pyosh_.ccdescription
0pass pass pass Fatal error
1ok ok ok setting readonly var (bash is only one where it's non-fatal)
detailsdetailsdetails
2ok ok ok readonly with temp binding
detailsdetailsdetails
3pass pass pass Failed redirect in assignment, vs. export
4FAIL FAIL FAIL Evaluation order of redirect and ${undef?error}
detailsdetailsdetails
5pass pass pass Function def in pipeline
6pass pass pass dynamic glob - http://landley.net/notes.html#08-05-2020
7pass FAIL FAIL no shebang
detailsdetails
8pass pass pass IFS
9pass pass pass shift is fatal at top level?
10pass pass pass var and func - http://landley.net/notes.html#19-03-2020
11pass pass pass IFS - http://landley.net/notes.html#05-03-2020
12pass pass pass for loop parsing - http://landley.net/notes.html#04-03-2020
13pass pass pass Parsing $(( ))
14FAIL FAIL FAIL IFS - http://landley.net/notes.html#15-02-2020 (TODO: osh)
detailsdetailsdetails
15FAIL FAIL FAIL IFS 2 (TODO: osh)
detailsdetailsdetails
16pass pass pass IFS 3
17pass pass pass IFS 4
18pass pass pass IFS 5
19pass pass pass Can't parse extra }
20pass pass pass Command Sub Syntax Error
21pass pass pass Pipeline - http://landley.net/notes-2019.html#16-12-2019
49 passed, 6 OK, 0 not implemented, 0 BUG, 11 failed, 0 timeouts, 0 cases skipped
3 failed under osh

Details on runs that didn't PASS

osh1 setting readonly var (bash is only one where it's non-fatal)

stdout:
stderr: 
  abc=def
  ^~~~
[ stdin ]:2: fatal: Can't assign to readonly value 'abc'
osh_.py1 setting readonly var (bash is only one where it's non-fatal)

stdout:
stderr: 
  abc=def
  ^~~~
[ stdin ]:2: fatal: Can't assign to readonly value 'abc'
osh_.cc1 setting readonly var (bash is only one where it's non-fatal)

stdout:
stderr: 
  abc=def
  ^~~~
[ stdin ]:2: fatal: Can't assign to readonly value 'abc'
osh2 readonly with temp binding

stdout:
one
status=0
hello
stderr:
  echo potato < /does/not/exist || echo hello
              ^
[ stdin ]:5: Can't open '/does/not/exist': No such file or directory
osh_.py2 readonly with temp binding

stdout:
one
status=0
hello
stderr:
  echo potato < /does/not/exist || echo hello
              ^
[ stdin ]:5: Can't open '/does/not/exist': No such file or directory
osh_.cc2 readonly with temp binding

stdout:
one
status=0
hello
stderr:
  echo potato < /does/not/exist || echo hello
              ^
[ stdin ]:5: -1: Bad file descriptor
osh4 Evaluation order of redirect and ${undef?error}

[osh stdout] Expected 'exists1\n', got 'exists1\nexists2\n'

stdout:
exists1
exists2
stderr:
rm: cannot remove '_tmp': Is a directory
  X=${x?bc} > walrus
      ^
[ -c flag ]:1: fatal: unset variable 'bc'
  >walrus echo ${a?bc}
                 ^
[ -c flag ]:1: fatal: unset variable 'bc'
osh_.py4 Evaluation order of redirect and ${undef?error}

[osh_.py stdout] Expected 'exists1\n', got 'exists1\nexists2\n'

stdout:
exists1
exists2
stderr:
rm: cannot remove '_tmp': Is a directory
  X=${x?bc} > walrus
      ^
[ -c flag ]:1: fatal: unset variable 'bc'
  >walrus echo ${a?bc}
                 ^
[ -c flag ]:1: fatal: unset variable 'bc'
osh_.cc4 Evaluation order of redirect and ${undef?error}

[osh_.cc stdout] Expected 'exists1\n', got 'exists1\nexists2\n'

stdout:
exists1
exists2
stderr:
rm: cannot remove '_tmp': Is a directory
  X=${x?bc} > walrus
  ^~
[ -c flag ]:1: fatal: unset variable 'bc'
  >walrus echo ${a?bc}
          ^~~~
[ -c flag ]:1: fatal: unset variable 'bc'
osh_.py7 no shebang

[osh_.py stdout] Expected 'hello\nhello\nhello 123\n', got 'hello\n'
[osh_.py status] Expected 0, got 1
[osh_.py stderr] Found 'Traceback (most recent'

stdout:
hello
stderr:
rm: cannot remove '_tmp': Is a directory
Traceback (most recent call last):
  File "/home/uke/oil/bin/osh_eval.py", line 66, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/osh_eval.py", line 34, in main
    None)
  File "/home/uke/oil/core/shell_native.py", line 486, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 332, in Batch
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 1644, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1482, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 1044, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/uke/oil/osh/cmd_eval.py", line 1547, in _ExecuteList
    status = self._Execute(child)
  File "/home/uke/oil/osh/cmd_eval.py", line 1482, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 711, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, cmd_st, node.do_fork)
  File "/home/uke/oil/osh/cmd_eval.py", line 550, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, cmd_st, do_fork)
  File "/home/uke/oil/core/executor.py", line 192, in RunSimpleCommand
    status = self.RunBuiltin(builtin_id, cmd_val)
  File "/home/uke/oil/core/executor.py", line 129, in RunBuiltin
    builtin_func = self.builtins[builtin_id]
KeyError: 3
Traceback (most recent call last):
  File "/home/uke/oil/bin/osh_eval.py", line 66, in <module>
    sys.exit(main(sys.argv))
  File "/home/uke/oil/bin/osh_eval.py", line 34, in main
    None)
  File "/home/uke/oil/core/shell_native.py", line 486, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/uke/oil/core/main_loop.py", line 332, in Batch
    is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, cmd_flags=cmd_flags)
  File "/home/uke/oil/osh/cmd_eval.py", line 1644, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/uke/oil/osh/cmd_eval.py", line 1482, in _Execute
    status = self._Dispatch(node, cmd_st)
  File "/home/uke/oil/osh/cmd_eval.py", line 709, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, cmd_st, node.do_fork)
  File "/home/uke/oil/osh/cmd_eval.py", line 550, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, cmd_st, do_fork)
  File "/home/uke/oil/core/executor.py", line 192, in RunSimpleCommand
    status = self.RunBuiltin(builtin_id, cmd_val)
  File "/home/uke/oil/core/executor.py", line 129, in RunBuiltin
    builtin_func = self.builtins[builtin_id]
KeyError: 3
osh_.cc7 no shebang

[osh_.cc stdout] Expected 'hello\nhello\nhello 123\n', got ''
[osh_.cc status] Expected 0, got 129

stdout:
stderr: 
rm: cannot remove '_tmp': Is a directory
terminate called after throwing an instance of 'IOError'
terminate called after throwing an instance of 'KeyError*'
terminate called after throwing an instance of 'KeyError*'
osh14 IFS - http://landley.net/notes.html#15-02-2020 (TODO: osh)

[osh stdout] Expected '==\n=abc=\n==\n==\n=abc=\n=def=\n==\n', got '==\n=abc=\n==\n=abc=\n=def=\n'

stdout:
==
=abc=
==
=abc=
=def=
stderr:
osh_.py14 IFS - http://landley.net/notes.html#15-02-2020 (TODO: osh)

[osh_.py stdout] Expected '==\n=abc=\n==\n==\n=abc=\n=def=\n==\n', got '==\n=abc=\n==\n=abc=\n=def=\n'

stdout:
==
=abc=
==
=abc=
=def=
stderr:
osh_.cc14 IFS - http://landley.net/notes.html#15-02-2020 (TODO: osh)

[osh_.cc stdout] Expected '==\n=abc=\n==\n==\n=abc=\n=def=\n==\n', got '==\n=abc=\n==\n=abc=\n=def=\n'

stdout:
==
=abc=
==
=abc=
=def=
stderr:
osh15 IFS 2 (TODO: osh)

[osh stdout] Expected '=x=\n=abc=\n=def=\n==\n', got '=x=\n=abc=\n=def=\n'

stdout:
=x=
=abc=
=def=
stderr:
  this one appears different between osh and bash
  ^~~~
[ stdin ]:1: 'this' not found
osh_.py15 IFS 2 (TODO: osh)

[osh_.py stdout] Expected '=x=\n=abc=\n=def=\n==\n', got '=x=\n=abc=\n=def=\n'

stdout:
=x=
=abc=
=def=
stderr:
  this one appears different between osh and bash
  ^~~~
[ stdin ]:1: 'this' not found
osh_.cc15 IFS 2 (TODO: osh)

[osh_.cc stdout] Expected '=x=\n=abc=\n=def=\n==\n', got '=x=\n=abc=\n=def=\n'

stdout:
=x=
=abc=
=def=
stderr:
  this one appears different between osh and bash
  ^~~~
[ stdin ]:1: 'this' not found