Results for introspect.test.sh

statusoshosh_.pyosh_.cc
pass 1022
FAIL 088
total101010
caseoshosh_.pyosh_.ccdescription
0pass FAIL FAIL ${FUNCNAME[@]} array
detailsdetails
1pass FAIL FAIL FUNCNAME with source (scalar or array)
detailsdetails
2pass FAIL FAIL BASH_SOURCE and BASH_LINENO scalar or array (e.g. for virtualenv)
detailsdetails
3pass FAIL FAIL ${FUNCNAME} with prefix/suffix operators
detailsdetails
4pass FAIL FAIL operators on FUNCNAME not allowed by default
detailsdetails
5pass pass pass ${FUNCNAME} and "set -u" (OSH regression)
6pass pass pass $((BASH_LINENO)) (scalar form in arith)
7pass FAIL FAIL ${BASH_SOURCE[@]} with source and function name
detailsdetails
8pass FAIL FAIL ${BASH_SOURCE[@]} with line numbers
detailsdetails
9pass FAIL FAIL ${BASH_LINENO[@]} is a stack of line numbers for function calls
detailsdetails
14 passed, 0 OK, 0 not implemented, 0 BUG, 16 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

osh_.py0 ${FUNCNAME[@]} array

[osh_.py stdout] Expected "['f']\n['g', 'f']\n['f']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:7: 'argv.py' not found
osh_.cc0 ${FUNCNAME[@]} array

[osh_.cc stdout] Expected "['f']\n['g', 'f']\n['f']\n", got ''
[osh_.cc status] Expected 0, got 127

stdout:
stderr: 
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py "${FUNCNAME[@]}"
    ^~~~~~~
[ stdin ]:7: 'argv.py' not found
osh_.py1 FUNCNAME with source (scalar or array)

[osh_.py stdout] Expected "[' @', 'source', 'f', 'g']\n[' 0', 'source']\n['${}', 'source']\n[' $', 'source']\n-----\n[' @', 'source']\n[' 0', 'source']\n['${}', 'source']\n[' $', 'source']\n-----\n[]\n", got ''
[osh_.py status] Expected 0, got 1
[osh_.py stderr] Found 'Traceback (most recent'

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 71, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 39, in main
    status = pure.Main('osh', arg_r, environ, login_shell, loader, None)
  File "/home/andy/git/oilshell/oil/core/pure.py", line 471, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 168, 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 1476, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 623, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, node.do_fork)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 477, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, do_fork)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 224, in RunSimpleCommand
    status = self.cmd_ev.RunProc(proc_node, argv[1:])
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1621, in RunProc
    status = self._Execute(proc.body)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 983, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1379, in _ExecuteList
    status = self._Execute(child)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 623, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, node.do_fork)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 477, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, do_fork)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 224, in RunSimpleCommand
    status = self.cmd_ev.RunProc(proc_node, argv[1:])
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1621, in RunProc
    status = self._Execute(proc.body)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 983, in _Dispatch
    status = self._ExecuteList(node.children)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1379, in _ExecuteList
    status = self._Execute(child)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 623, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, node.do_fork)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 477, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, do_fork)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 194, in RunSimpleCommand
    status = self.RunBuiltin(builtin_id, cmd_val)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 122, in RunBuiltin
    builtin_func = self.builtins[builtin_id]
KeyError: 2
osh_.cc1 FUNCNAME with source (scalar or array)

[osh_.cc stdout] Expected "[' @', 'source', 'f', 'g']\n[' 0', 'source']\n['${}', 'source']\n[' $', 'source']\n-----\n[' @', 'source']\n[' 0', 'source']\n['${}', 'source']\n[' $', 'source']\n-----\n[]\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
osh_eval.dbg: mycpp/mylib.h:674: V Dict<int, vm::_Builtin *>::index(K) [K = int, V = vm::_Builtin *]: Assertion `0' failed.
osh_.py2 BASH_SOURCE and BASH_LINENO scalar or array (e.g. for virtualenv)

[osh_.py stdout] Expected "['']\n['']\n['']\n['']\n['']\n['']\n__\n['spec/testdata/bash-source-string.sh']\n['spec/testdata/bash-source-string.sh']\n['9']\n['9']\n____\n['spec/testdata/bash-source-string2.sh']\n['spec/testdata/bash-source-string2.sh']\n['11']\n['11']\n", got '__\n'
[osh_.py status] Expected 0, got 1
[osh_.py stderr] Found 'Traceback (most recent'

stdout:
__
stderr:
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
  argv.py "$BASH_SOURCE"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:2: 'argv.py' not found
  argv.py "${BASH_SOURCE}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:3: 'argv.py' not found
  argv.py "$BASH_LINENO"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:4: 'argv.py' not found
  argv.py "${BASH_LINENO}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:5: 'argv.py' not found
  argv.py "$FUNCNAME"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:6: 'argv.py' not found
  argv.py "${FUNCNAME}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:7: 'argv.py' not found
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 71, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 39, in main
    status = pure.Main('osh', arg_r, environ, login_shell, loader, None)
  File "/home/andy/git/oilshell/oil/core/pure.py", line 471, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 168, 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 1476, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 623, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, node.do_fork)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 477, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, do_fork)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 230, in RunSimpleCommand
    return self.RunBuiltin(builtin_id, cmd_val)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 122, in RunBuiltin
    builtin_func = self.builtins[builtin_id]
KeyError: 30
osh_.cc2 BASH_SOURCE and BASH_LINENO scalar or array (e.g. for virtualenv)

[osh_.cc stdout] Expected "['']\n['']\n['']\n['']\n['']\n['']\n__\n['spec/testdata/bash-source-string.sh']\n['spec/testdata/bash-source-string.sh']\n['9']\n['9']\n____\n['spec/testdata/bash-source-string2.sh']\n['spec/testdata/bash-source-string2.sh']\n['11']\n['11']\n", got '__\n'
[osh_.cc status] Expected 0, got -6

stdout:
__
stderr:
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
  argv.py "$BASH_SOURCE"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:2: 'argv.py' not found
  argv.py "${BASH_SOURCE}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:3: 'argv.py' not found
  argv.py "$BASH_LINENO"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:4: 'argv.py' not found
  argv.py "${BASH_LINENO}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:5: 'argv.py' not found
  argv.py "$FUNCNAME"  # SimpleVarSub
  ^~~~~~~
[ stdin ]:6: 'argv.py' not found
  argv.py "${FUNCNAME}"  # BracedVarSub
  ^~~~~~~
[ stdin ]:7: 'argv.py' not found
osh_eval.dbg: mycpp/mylib.h:674: V Dict<int, vm::_Builtin *>::index(K) [K = int, V = vm::_Builtin *]: Assertion `0' failed.
osh_.py3 ${FUNCNAME} with prefix/suffix operators

[osh_.py stdout] Expected "['5']\n['c']\n['heck']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
    argv.py "${#FUNCNAME}"
    ^~~~~~~
[ stdin ]:3: 'argv.py' not found
    argv.py "${FUNCNAME::1}"
    ^~~~~~~
[ stdin ]:4: 'argv.py' not found
    argv.py "${FUNCNAME:1}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
osh_.cc3 ${FUNCNAME} with prefix/suffix operators

[osh_.cc stdout] Expected "['5']\n['c']\n['heck']\n", got ''
[osh_.cc status] Expected 0, got 127

stdout:
stderr: 
    argv.py "${#FUNCNAME}"
    ^~~~~~~
[ stdin ]:3: 'argv.py' not found
    argv.py "${FUNCNAME::1}"
    ^~~~~~~
[ stdin ]:4: 'argv.py' not found
    argv.py "${FUNCNAME:1}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
osh_.py4 operators on FUNCNAME not allowed by default

[osh_.py stdout] Expected "['check']\n", got ''

stdout:
stderr: 
    argv.py "${FUNCNAME}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py "${#FUNCNAME}"
             ^~
[ stdin ]:3: fatal: Array 'FUNCNAME' can't be referred to as a scalar (without @ or *)
osh_.cc4 operators on FUNCNAME not allowed by default

[osh_.cc stdout] Expected "['check']\n", got ''

stdout:
stderr: 
    argv.py "${FUNCNAME}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py "${#FUNCNAME}"
    ^~~~~~~
[ stdin ]:3: fatal: Array 'FUNCNAME' can't be referred to as a scalar (without @ or *)
osh_.py7 ${BASH_SOURCE[@]} with source and function name

[osh_.py stdout] Expected "[]\n['spec/testdata/bash-source-simple.sh']\n['spec/testdata/bash-source-simple.sh']\n", got ''
[osh_.py status] Expected 0, got 1
[osh_.py stderr] Found 'Traceback (most recent'

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
  argv.py "${BASH_SOURCE[@]}"
  ^~~~~~~
[ stdin ]:2: 'argv.py' not found
Traceback (most recent call last):
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 71, in <module>
    sys.exit(main(sys.argv))
  File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 39, in main
    status = pure.Main('osh', arg_r, environ, login_shell, loader, None)
  File "/home/andy/git/oilshell/oil/core/pure.py", line 471, in Main
    cmd_flags=cmd_eval.IsMainProgram)
  File "/home/andy/git/oilshell/oil/core/main_loop.py", line 168, 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 1476, in ExecuteAndCatch
    status = self._Execute(node)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1323, in _Execute
    status, check_errexit = self._Dispatch(node, pipeline_st)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 623, in _Dispatch
    status = self._RunSimpleCommand(cmd_val, node.do_fork)
  File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 477, in _RunSimpleCommand
    return self.shell_ex.RunSimpleCommand(cmd_val, do_fork)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 230, in RunSimpleCommand
    return self.RunBuiltin(builtin_id, cmd_val)
  File "/home/andy/git/oilshell/oil/core/executor.py", line 122, in RunBuiltin
    builtin_func = self.builtins[builtin_id]
KeyError: 30
osh_.cc7 ${BASH_SOURCE[@]} with source and function name

[osh_.cc stdout] Expected "[]\n['spec/testdata/bash-source-simple.sh']\n['spec/testdata/bash-source-simple.sh']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
  argv.py "${BASH_SOURCE[@]}"
  ^~~~~~~
[ stdin ]:2: 'argv.py' not found
osh_eval.dbg: mycpp/mylib.h:674: V Dict<int, vm::_Builtin *>::index(K) [K = int, V = vm::_Builtin *]: Assertion `0' failed.
osh_.py8 ${BASH_SOURCE[@]} with line numbers

[osh_.py stdout] Expected "['begin F funcs', 'f', 'main']\n['begin F files', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['begin F lines', '21', '0']\n['G funcs', 'g', 'f', 'main']\n['G files', 'spec/testdata/bash-source-2.sh', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['G lines', '15', '21', '0']\n['end F funcs', 'f', 'main']\n['end F', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['end F lines', '21', '0']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
  $SH spec/testdata/bash-source.sh
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[ stdin ]:2: 'spec/testdata/bash-source.sh' not found
osh_.cc8 ${BASH_SOURCE[@]} with line numbers

[osh_.cc stdout] Expected "['begin F funcs', 'f', 'main']\n['begin F files', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['begin F lines', '21', '0']\n['G funcs', 'g', 'f', 'main']\n['G files', 'spec/testdata/bash-source-2.sh', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['G lines', '15', '21', '0']\n['end F funcs', 'f', 'main']\n['end F', 'spec/testdata/bash-source.sh', 'spec/testdata/bash-source.sh']\n['end F lines', '21', '0']\n", got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
  cd $REPO_ROOT
  ^~
[ stdin ]:1: $HOME isn't defined
osh_eval.dbg: cpp/pylib_path_stat.h:10: bool path_stat::exists(Str *): Assertion `0' failed.
osh_.py9 ${BASH_LINENO[@]} is a stack of line numbers for function calls

[osh_.py stdout] Expected "[]\n['begin F', '10']\n['G', '6', '10']\n['end F', '10']\n", got ''
[osh_.py status] Expected 0, got 127

stdout:
stderr: 
  argv.py ${BASH_LINENO[@]}
  ^~~~~~~
[ stdin ]:9: 'argv.py' not found
    argv.py 'begin F' "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
    argv.py G "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py 'end F' "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:7: 'argv.py' not found
osh_.cc9 ${BASH_LINENO[@]} is a stack of line numbers for function calls

[osh_.cc stdout] Expected "[]\n['begin F', '10']\n['G', '6', '10']\n['end F', '10']\n", got ''
[osh_.cc status] Expected 0, got 127

stdout:
stderr: 
  argv.py ${BASH_LINENO[@]}
  ^~~~~~~
[ stdin ]:9: 'argv.py' not found
    argv.py 'begin F' "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:5: 'argv.py' not found
    argv.py G "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:2: 'argv.py' not found
    argv.py 'end F' "${BASH_LINENO[@]}"
    ^~~~~~~
[ stdin ]:7: 'argv.py' not found