spec test index / oilshell.org
status | osh | osh_.py | osh_.cc | |
pass | 8 | 3 | 3 | |
ok | 1 | 1 | 1 | |
N-I | 1 | 0 | 0 | |
FAIL | 3 | 9 | 9 | |
total | 13 | 13 | 13 | |
case | osh | osh_.py | osh_.cc | description |
0 | pass | pass | pass | var ref ${!a} |
1 | pass | FAIL | FAIL | ref to $@ with @ |
details | details | |||
2 | pass | FAIL | FAIL | ref to $1 and $2 with 1 and 2 |
details | details | |||
3 | FAIL | FAIL | FAIL | var ref with 1 and @ and * |
details | details | details | ||
4 | pass | pass | pass | var ref to special var BASH_SOURCE |
5 | N-I | FAIL | FAIL | var ref to $? with '?' (not in Oil) |
details | details | details | ||
6 | FAIL | FAIL | FAIL | indirection, *then* fancy expansion features |
details | details | details | ||
7 | FAIL | FAIL | FAIL | indirection *to* an array reference |
details | details | details | ||
8 | pass | FAIL | FAIL | indirection to nasty complex array references |
details | details | |||
9 | pass | FAIL | FAIL | indirection *to* fancy expansion features bash disallows |
details | details | |||
10 | ok | ok | ok | Bad var ref with ${!a} |
details | details | details | ||
11 | pass | FAIL | FAIL | ${!OPTIND} (used by bash completion |
details | details | |||
12 | pass | pass | pass | ${!ref-default} |
14 passed, 3 OK, 1 not implemented, 0 BUG, 21 failed, 0 timeouts, 0 cases skipped 3 failed under osh
osh_.py | 1 ref to $@ with @ [osh_.py stdout] Expected 'ref=one two\n', got 'ref=/home/andy/git/oilshell/oil/bin/osh_eval.py\n' stdout: ref=/home/andy/git/oilshell/oil/bin/osh_eval.pystderr: set 4 |
osh_.cc | 1 ref to $@ with @ [osh_.cc stdout] Expected 'ref=one two\n', got '' [osh_.cc status] Expected 0, got 1 stdout: stderr: set 4 echo ref=${!ref} ^~~~ [ stdin ]:3: fatal: Bad indirect expansion: '@' |
osh_.py | 2 ref to $1 and $2 with 1 and 2 [osh_.py stdout] Expected 'ref1=one\nref2=two\n', got 'ref1=/home/andy/git/oilshell/oil/bin/osh_eval.py\nref2=\n' stdout: ref1=/home/andy/git/oilshell/oil/bin/osh_eval.py ref2=stderr: set 4 |
osh_.cc | 2 ref to $1 and $2 with 1 and 2 [osh_.cc stdout] Expected 'ref1=one\nref2=two\n', got 'ref1=/home/andy/git/oilshell/oil/_bin/osh_eval.dbg\nref2=\n' stdout: ref1=/home/andy/git/oilshell/oil/_bin/osh_eval.dbg ref2=stderr: set 4 |
osh | 3 var ref with 1 and @ and * [osh stdout] Expected '|x|\n|x|y|\n|x y|\n', got '|x|\n|x|y|\n|x|y|\n' stdout: |x| |x|y| |x|y|stderr: |
osh_.py | 3 var ref with 1 and @ and * [osh_.py stdout] Expected '|x|\n|x|y|\n|x y|\n', got '' [osh_.py status] Expected 0, got 1 [osh_.py stderr] Found 'Traceback (most recent' stdout: stderr: set 4 Traceback (most recent call last): File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 341, in <module> status = main(sys.argv) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 228, in main status = main_loop.Batch(cmd_ev, c_parser, arena, is_main=True) File "/home/andy/git/oilshell/oil/core/main_loop.py", line 165, in Batch is_return, is_fatal = cmd_ev.ExecuteAndCatch(node, optimize=optimize) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1450, in ExecuteAndCatch status = self._Execute(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1334, in _Execute status, check_errexit = self._Dispatch(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 956, in _Dispatch status = self._ExecuteList(node.children) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1357, in _ExecuteList status = self._Execute(child) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 1334, in _Execute status, check_errexit = self._Dispatch(node) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 573, in _Dispatch status = self._RunSimpleCommand(cmd_val, node.do_fork) File "/home/andy/git/oilshell/oil/osh/cmd_eval.py", line 481, in _RunSimpleCommand return self.shell_ex.RunSimpleCommand(cmd_val, do_fork) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 321, in RunSimpleCommand return self.RunBuiltin(builtin_id, cmd_val) File "/home/andy/git/oilshell/oil/bin/osh_eval.py", line 302, in RunBuiltin builtin_func = self.builtins[builtin_id] KeyError: 22 |
osh_.cc | 3 var ref with 1 and @ and * [osh_.cc stdout] Expected '|x|\n|x|y|\n|x y|\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: set 4 osh_eval.dbg: mycpp/mylib.h:578: V Dict<Str *, Str *>::index(K) [K = Str *, V = Str *]: Assertion `0' failed. |
osh | 5 var ref to $? with '?' (not in Oil) stdout: myfuncstderr: echo ${!ref} ^~~ [ stdin ]:3: fatal: Bad indirect expansion: '?' |
osh_.py | 5 var ref to $? with '?' (not in Oil) [osh_.py stdout] Expected 'myfunc\n', got "(cmd_value.Argv argv:[myfunc FUNCNAME] arg_spids:[22 24])\n(cmd_value.Argv argv:[myfunc '?'] arg_spids:[26 28])\n" [osh_.py status] Expected 1, got 0 stdout: (cmd_value.Argv argv:[myfunc FUNCNAME] arg_spids:[22 24]) (cmd_value.Argv argv:[myfunc '?'] arg_spids:[26 28])stderr: Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 5 var ref to $? with '?' (not in Oil) [osh_.cc stdout] Expected 'myfunc\n', got "(cmd_value.Argv argv:[myfunc FUNCNAME] arg_spids:[22 24])\n(cmd_value.Argv argv:[myfunc '?'] arg_spids:[26 28])\n" [osh_.cc status] Expected 1, got 0 stdout: (cmd_value.Argv argv:[myfunc FUNCNAME] arg_spids:[22 24]) (cmd_value.Argv argv:[myfunc '?'] arg_spids:[26 28])stderr: Unhandled SimpleCommand Unhandled SimpleCommand |
osh | 6 indirection, *then* fancy expansion features [osh stdout] Expected 'ok\n', got "${!b[1]} -> expected asdf, got asdf x\n$zz -> expected foo, got \nbar vs foo\n$zz -> expected foo, got \nbad err msg: ${!w:?oops} -> ${!w:?oops}\n ^\n[ eval at line 10 of (source.Stdin comment:'') ]:10: fatal: unset variable 'oops'\n${!x^a} -> expected Aaabcc, got \n${!p@P} -> expected $ , got p pp\nok\n" stdout: ${!b[1]} -> expected asdf, got asdf x $zz -> expected foo, got bar vs foo $zz -> expected foo, got bad err msg: ${!w:?oops} -> ${!w:?oops} ^ [ eval at line 10 of (source.Stdin comment:'') ]:10: fatal: unset variable 'oops' ${!x^a} -> expected Aaabcc, got ${!p@P} -> expected $ , got p pp okstderr: echo "${!x^a}" ^~~~ [ eval at line 5 of (source.Stdin comment:'') ]:5: fatal: Id.VOp1_Caret can't have an argument |
osh_.py | 6 indirection, *then* fancy expansion features [osh_.py stdout] Expected 'ok\n', got "(cmd_value.Argv argv:[check_err '${!!xd}'] arg_spids:[173 175])\n(cmd_value.Argv argv:[check_err '${!!x*}'] arg_spids:[179 181])\n(cmd_value.Argv argv:[check_err '${!!a[*]}'] arg_spids:[192 194])\n(cmd_value.Argv argv:[check_err '${!#x}'] arg_spids:[198 200])\n(cmd_value.Argv argv:[check_err '${!#a[@]}'] arg_spids:[204 206])\n(cmd_value.Argv argv:[check_expand '${!a[1]}' xx] arg_spids:[210 212 216])\n(cmd_value.Argv argv:[check_expand '${!b[1]}' asdf] arg_spids:[225 227 231])\n(cmd_value.Argv argv:[check_expand '${!y:-foo}' foo] arg_spids:[242 244 248])\n(cmd_value.Argv argv:[check_expand '${!x:-foo}' aaabcc] arg_spids:[250 252 256])\n(cmd_value.Argv argv:[check_eq foo foo] arg_spids:[264 266 275])\n(cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[279 281 285])\n(cmd_value.Argv argv:[check_eq bar foo] arg_spids:[287 289 298])\n(cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[302 304 308])\n(cmd_value.Argv argv:[check_err '${!w:?oops}' '*: oops'] arg_spids:[316 318 322])\n(cmd_value.Argv argv:[check_expand '${!x:?oops}' aaabcc] arg_spids:[326 328 332])\n(cmd_value.Argv argv:[check_expand '${!y:+foo}' ''] arg_spids:[334 336 340])\n(cmd_value.Argv argv:[check_expand '${!x:+foo}' foo] arg_spids:[343 345 349])\n(cmd_value.Argv argv:[check_expand '${!x:2}' abcc] arg_spids:[351 353 357])\n(cmd_value.Argv argv:[check_expand '${!x:2:2}' ab] arg_spids:[359 361 365])\n(cmd_value.Argv argv:[check_expand '${!x#*a}' aabcc] arg_spids:[367 369 373])\n(cmd_value.Argv argv:[check_expand '${!x%%c*}' aaab] arg_spids:[375 377 381])\n(cmd_value.Argv argv:[check_expand '${!x/a*b/d}' dcc] arg_spids:[383 385 389])\n(cmd_value.Argv argv:[check_expand '${!x^a}' Aaabcc] arg_spids:[391 393 397])\n(cmd_value.Argv argv:[check_expand '${!p@P}' '$ '] arg_spids:[408 410 414])\nok\n" stdout: (cmd_value.Argv argv:[check_err '${!!xd}'] arg_spids:[173 175]) (cmd_value.Argv argv:[check_err '${!!x*}'] arg_spids:[179 181]) (cmd_value.Argv argv:[check_err '${!!a[*]}'] arg_spids:[192 194]) (cmd_value.Argv argv:[check_err '${!#x}'] arg_spids:[198 200]) (cmd_value.Argv argv:[check_err '${!#a[@]}'] arg_spids:[204 206]) (cmd_value.Argv argv:[check_expand '${!a[1]}' xx] arg_spids:[210 212 216]) (cmd_value.Argv argv:[check_expand '${!b[1]}' asdf] arg_spids:[225 227 231]) (cmd_value.Argv argv:[check_expand '${!y:-foo}' foo] arg_spids:[242 244 248]) (cmd_value.Argv argv:[check_expand '${!x:-foo}' aaabcc] arg_spids:[250 252 256]) (cmd_value.Argv argv:[check_eq foo foo] arg_spids:[264 266 275]) (cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[279 281 285]) (cmd_value.Argv argv:[check_eq bar foo] arg_spids:[287 289 298]) (cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[302 304 308]) (cmd_value.Argv argv:[check_err '${!w:?oops}' '*: oops'] arg_spids:[316 318 322]) (cmd_value.Argv argv:[check_expand '${!x:?oops}' aaabcc] arg_spids:[326 328 332]) (cmd_value.Argv argv:[check_expand '${!y:+foo}' ''] arg_spids:[334 336 340]) (cmd_value.Argv argv:[check_expand '${!x:+foo}' foo] arg_spids:[343 345 349]) (cmd_value.Argv argv:[check_expand '${!x:2}' abcc] arg_spids:[351 353 357]) (cmd_value.Argv argv:[check_expand '${!x:2:2}' ab] arg_spids:[359 361 365]) (cmd_value.Argv argv:[check_expand '${!x#*a}' aabcc] arg_spids:[367 369 373]) (cmd_value.Argv argv:[check_expand '${!x%%c*}' aaab] arg_spids:[375 377 381]) (cmd_value.Argv argv:[check_expand '${!x/a*b/d}' dcc] arg_spids:[383 385 389]) (cmd_value.Argv argv:[check_expand '${!x^a}' Aaabcc] arg_spids:[391 393 397]) (cmd_value.Argv argv:[check_expand '${!p@P}' '$ '] arg_spids:[408 410 414]) okstderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 6 indirection, *then* fancy expansion features [osh_.cc stdout] Expected 'ok\n', got "(cmd_value.Argv argv:[check_err '${!!xd}'] arg_spids:[173 175])\n(cmd_value.Argv argv:[check_err '${!!x*}'] arg_spids:[179 181])\n(cmd_value.Argv argv:[check_err '${!!a[*]}'] arg_spids:[192 194])\n(cmd_value.Argv argv:[check_err '${!#x}'] arg_spids:[198 200])\n(cmd_value.Argv argv:[check_err '${!#a[@]}'] arg_spids:[204 206])\n(cmd_value.Argv argv:[check_expand '${!a[1]}' xx] arg_spids:[210 212 216])\n(cmd_value.Argv argv:[check_expand '${!b[1]}' asdf] arg_spids:[225 227 231])\n(cmd_value.Argv argv:[check_expand '${!y:-foo}' foo] arg_spids:[242 244 248])\n(cmd_value.Argv argv:[check_expand '${!x:-foo}' aaabcc] arg_spids:[250 252 256])\n(cmd_value.Argv argv:[check_eq foo foo] arg_spids:[264 266 275])\n(cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[279 281 285])\n(cmd_value.Argv argv:[check_eq bar foo] arg_spids:[287 289 298])\n(cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[302 304 308])\n(cmd_value.Argv argv:[check_err '${!w:?oops}' '*: oops'] arg_spids:[316 318 322])\n(cmd_value.Argv argv:[check_expand '${!x:?oops}' aaabcc] arg_spids:[326 328 332])\n(cmd_value.Argv argv:[check_expand '${!y:+foo}' ''] arg_spids:[334 336 340])\n(cmd_value.Argv argv:[check_expand '${!x:+foo}' foo] arg_spids:[343 345 349])\n(cmd_value.Argv argv:[check_expand '${!x:2}' abcc] arg_spids:[351 353 357])\n(cmd_value.Argv argv:[check_expand '${!x:2:2}' ab] arg_spids:[359 361 365])\n(cmd_value.Argv argv:[check_expand '${!x#*a}' aabcc] arg_spids:[367 369 373])\n(cmd_value.Argv argv:[check_expand '${!x%%c*}' aaab] arg_spids:[375 377 381])\n(cmd_value.Argv argv:[check_expand '${!x/a*b/d}' dcc] arg_spids:[383 385 389])\n(cmd_value.Argv argv:[check_expand '${!x^a}' Aaabcc] arg_spids:[391 393 397])\n(cmd_value.Argv argv:[check_expand '${!p@P}' '$ '] arg_spids:[408 410 414])\nok\n" stdout: (cmd_value.Argv argv:[check_err '${!!xd}'] arg_spids:[173 175]) (cmd_value.Argv argv:[check_err '${!!x*}'] arg_spids:[179 181]) (cmd_value.Argv argv:[check_err '${!!a[*]}'] arg_spids:[192 194]) (cmd_value.Argv argv:[check_err '${!#x}'] arg_spids:[198 200]) (cmd_value.Argv argv:[check_err '${!#a[@]}'] arg_spids:[204 206]) (cmd_value.Argv argv:[check_expand '${!a[1]}' xx] arg_spids:[210 212 216]) (cmd_value.Argv argv:[check_expand '${!b[1]}' asdf] arg_spids:[225 227 231]) (cmd_value.Argv argv:[check_expand '${!y:-foo}' foo] arg_spids:[242 244 248]) (cmd_value.Argv argv:[check_expand '${!x:-foo}' aaabcc] arg_spids:[250 252 256]) (cmd_value.Argv argv:[check_eq foo foo] arg_spids:[264 266 275]) (cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[279 281 285]) (cmd_value.Argv argv:[check_eq bar foo] arg_spids:[287 289 298]) (cmd_value.Argv argv:[check_expand '$zz' foo] arg_spids:[302 304 308]) (cmd_value.Argv argv:[check_err '${!w:?oops}' '*: oops'] arg_spids:[316 318 322]) (cmd_value.Argv argv:[check_expand '${!x:?oops}' aaabcc] arg_spids:[326 328 332]) (cmd_value.Argv argv:[check_expand '${!y:+foo}' ''] arg_spids:[334 336 340]) (cmd_value.Argv argv:[check_expand '${!x:+foo}' foo] arg_spids:[343 345 349]) (cmd_value.Argv argv:[check_expand '${!x:2}' abcc] arg_spids:[351 353 357]) (cmd_value.Argv argv:[check_expand '${!x:2:2}' ab] arg_spids:[359 361 365]) (cmd_value.Argv argv:[check_expand '${!x#*a}' aabcc] arg_spids:[367 369 373]) (cmd_value.Argv argv:[check_expand '${!x%%c*}' aaab] arg_spids:[375 377 381]) (cmd_value.Argv argv:[check_expand '${!x/a*b/d}' dcc] arg_spids:[383 385 389]) (cmd_value.Argv argv:[check_expand '${!x^a}' Aaabcc] arg_spids:[391 393 397]) (cmd_value.Argv argv:[check_expand '${!p@P}' '$ '] arg_spids:[408 410 414]) okstderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh | 7 indirection *to* an array reference [osh stdout] Expected '.\n.x\n.x.y\n.x y\n', got '.\n.x\n.x.y\n.x.y\n' stdout: . .x .x.y .x.ystderr: |
osh_.py | 7 indirection *to* an array reference [osh_.py stdout] Expected '.\n.x\n.x.y\n.x y\n', got "(cmd_value.Argv argv:[f 'a[0]'] arg_spids:[25 27])\n(cmd_value.Argv argv:[f 'b[0]'] arg_spids:[38 40])\n(cmd_value.Argv argv:[f 'b[@]'] arg_spids:[44 46])\n(cmd_value.Argv argv:[f 'b[*]'] arg_spids:[50 52])\n" stdout: (cmd_value.Argv argv:[f 'a[0]'] arg_spids:[25 27]) (cmd_value.Argv argv:[f 'b[0]'] arg_spids:[38 40]) (cmd_value.Argv argv:[f 'b[@]'] arg_spids:[44 46]) (cmd_value.Argv argv:[f 'b[*]'] arg_spids:[50 52])stderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 7 indirection *to* an array reference [osh_.cc stdout] Expected '.\n.x\n.x.y\n.x y\n', got '' [osh_.cc status] Expected 0, got -6 stdout: stderr: osh_eval.dbg: cpp/libc.h:37: List<Str *> *libc::glob(Str *): Assertion `0' failed. |
osh_.py | 8 indirection to nasty complex array references [osh_.py stdout] Expected '1 end\n', got '(cmd_value.Argv argv:[f \'a[1]\'] arg_spids:[62 64])\n(cmd_value.Argv argv:[f \'a[{1,0}]\'] arg_spids:[68 70])\n(cmd_value.Argv argv:[f \'a[<(echo x)]\'] arg_spids:[77 79])\n(cmd_value.Argv argv:[f \'a[$aa]\'] arg_spids:[91 93])\n(cmd_value.Argv argv:[f \'a[b*]\'] arg_spids:[100 102])\n(cmd_value.Argv argv:[f \'a[1"]\'] arg_spids:[109 111])\n(cmd_value.Argv argv:[f \'a[$b]\'] arg_spids:[142 144])\n(cmd_value.Argv argv:[f \'a[${c:-1}]\'] arg_spids:[148 150])\n(cmd_value.Argv argv:[f \'a[$(echo 1)]\'] arg_spids:[154 156])\n(cmd_value.Argv argv:[f \'a[$(( 3 - 2 ))]\'] arg_spids:[160 162])\nend\n' stdout: (cmd_value.Argv argv:[f 'a[1]'] arg_spids:[62 64]) (cmd_value.Argv argv:[f 'a[{1,0}]'] arg_spids:[68 70]) (cmd_value.Argv argv:[f 'a[<(echo x)]'] arg_spids:[77 79]) (cmd_value.Argv argv:[f 'a[$aa]'] arg_spids:[91 93]) (cmd_value.Argv argv:[f 'a[b*]'] arg_spids:[100 102]) (cmd_value.Argv argv:[f 'a[1"]'] arg_spids:[109 111]) (cmd_value.Argv argv:[f 'a[$b]'] arg_spids:[142 144]) (cmd_value.Argv argv:[f 'a[${c:-1}]'] arg_spids:[148 150]) (cmd_value.Argv argv:[f 'a[$(echo 1)]'] arg_spids:[154 156]) (cmd_value.Argv argv:[f 'a[$(( 3 - 2 ))]'] arg_spids:[160 162]) endstderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 8 indirection to nasty complex array references [osh_.cc stdout] Expected '1 end\n', got '(cmd_value.Argv argv:[f \'a[1]\'] arg_spids:[62 64])\n(cmd_value.Argv argv:[f \'a[{1,0}]\'] arg_spids:[68 70])\n(cmd_value.Argv argv:[f \'a[<(echo x)]\'] arg_spids:[77 79])\n(cmd_value.Argv argv:[f \'a[$aa]\'] arg_spids:[91 93])\n(cmd_value.Argv argv:[f \'a[b*]\'] arg_spids:[100 102])\n(cmd_value.Argv argv:[f \'a[1"]\'] arg_spids:[109 111])\n(cmd_value.Argv argv:[f \'a[$b]\'] arg_spids:[142 144])\n(cmd_value.Argv argv:[f \'a[${c:-1}]\'] arg_spids:[148 150])\n(cmd_value.Argv argv:[f \'a[$(echo 1)]\'] arg_spids:[154 156])\n(cmd_value.Argv argv:[f \'a[$(( 3 - 2 ))]\'] arg_spids:[160 162])\nend\n' stdout: (cmd_value.Argv argv:[f 'a[1]'] arg_spids:[62 64]) (cmd_value.Argv argv:[f 'a[{1,0}]'] arg_spids:[68 70]) (cmd_value.Argv argv:[f 'a[<(echo x)]'] arg_spids:[77 79]) (cmd_value.Argv argv:[f 'a[$aa]'] arg_spids:[91 93]) (cmd_value.Argv argv:[f 'a[b*]'] arg_spids:[100 102]) (cmd_value.Argv argv:[f 'a[1"]'] arg_spids:[109 111]) (cmd_value.Argv argv:[f 'a[$b]'] arg_spids:[142 144]) (cmd_value.Argv argv:[f 'a[${c:-1}]'] arg_spids:[148 150]) (cmd_value.Argv argv:[f 'a[$(echo 1)]'] arg_spids:[154 156]) (cmd_value.Argv argv:[f 'a[$(( 3 - 2 ))]'] arg_spids:[160 162]) endstderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.py | 9 indirection *to* fancy expansion features bash disallows [osh_.py stdout] Expected u'', got "(cmd_value.Argv argv:[check_indir 'a[0'] arg_spids:[95 97])\n(cmd_value.Argv argv:[check_indir 'aa[k'] arg_spids:[101 103])\n(cmd_value.Argv argv:[check_indir '!x' a] arg_spids:[107 109 113])\n(cmd_value.Argv argv:[check_indir '!a[0]' y] arg_spids:[115 117 121])\n(cmd_value.Argv argv:[check_indir 'x:-foo' y] arg_spids:[123 125 129])\n(cmd_value.Argv argv:[check_indir 'x:=foo' y] arg_spids:[131 133 137])\n(cmd_value.Argv argv:[check_indir 'x:?oops' y] arg_spids:[139 141 145])\n(cmd_value.Argv argv:[check_indir 'x:+yy' yy] arg_spids:[147 149 153])\n(cmd_value.Argv argv:[check_indir 'x:0' y] arg_spids:[155 157 161])\n(cmd_value.Argv argv:[check_indir 'x:0:1' y] arg_spids:[163 165 169])\n(cmd_value.Argv argv:[check_indir '!a@' 'a aa'] arg_spids:[171 173 177])\n(cmd_value.Argv argv:[check_indir '#x' 1] arg_spids:[181 183 187])\n(cmd_value.Argv argv:[check_indir 'x#y'] arg_spids:[189 191])\n(cmd_value.Argv argv:[check_indir 'x/y/foo' foo] arg_spids:[195 197 201])\n(cmd_value.Argv argv:[check_indir 'x@Q' '\\'y\\''] arg_spids:[203 205 209])\ndone\n" [osh_.py status] Expected 1, got 0 stdout: (cmd_value.Argv argv:[check_indir 'a[0'] arg_spids:[95 97]) (cmd_value.Argv argv:[check_indir 'aa[k'] arg_spids:[101 103]) (cmd_value.Argv argv:[check_indir '!x' a] arg_spids:[107 109 113]) (cmd_value.Argv argv:[check_indir '!a[0]' y] arg_spids:[115 117 121]) (cmd_value.Argv argv:[check_indir 'x:-foo' y] arg_spids:[123 125 129]) (cmd_value.Argv argv:[check_indir 'x:=foo' y] arg_spids:[131 133 137]) (cmd_value.Argv argv:[check_indir 'x:?oops' y] arg_spids:[139 141 145]) (cmd_value.Argv argv:[check_indir 'x:+yy' yy] arg_spids:[147 149 153]) (cmd_value.Argv argv:[check_indir 'x:0' y] arg_spids:[155 157 161]) (cmd_value.Argv argv:[check_indir 'x:0:1' y] arg_spids:[163 165 169]) (cmd_value.Argv argv:[check_indir '!a@' 'a aa'] arg_spids:[171 173 177]) (cmd_value.Argv argv:[check_indir '#x' 1] arg_spids:[181 183 187]) (cmd_value.Argv argv:[check_indir 'x#y'] arg_spids:[189 191]) (cmd_value.Argv argv:[check_indir 'x/y/foo' foo] arg_spids:[195 197 201]) (cmd_value.Argv argv:[check_indir 'x@Q' '\'y\''] arg_spids:[203 205 209]) donestderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh_.cc | 9 indirection *to* fancy expansion features bash disallows [osh_.cc stdout] Expected u'', got "(cmd_value.Argv argv:[check_indir 'a[0'] arg_spids:[95 97])\n(cmd_value.Argv argv:[check_indir 'aa[k'] arg_spids:[101 103])\n(cmd_value.Argv argv:[check_indir '!x' a] arg_spids:[107 109 113])\n(cmd_value.Argv argv:[check_indir '!a[0]' y] arg_spids:[115 117 121])\n(cmd_value.Argv argv:[check_indir 'x:-foo' y] arg_spids:[123 125 129])\n(cmd_value.Argv argv:[check_indir 'x:=foo' y] arg_spids:[131 133 137])\n(cmd_value.Argv argv:[check_indir 'x:?oops' y] arg_spids:[139 141 145])\n(cmd_value.Argv argv:[check_indir 'x:+yy' yy] arg_spids:[147 149 153])\n(cmd_value.Argv argv:[check_indir 'x:0' y] arg_spids:[155 157 161])\n(cmd_value.Argv argv:[check_indir 'x:0:1' y] arg_spids:[163 165 169])\n(cmd_value.Argv argv:[check_indir '!a@' 'a aa'] arg_spids:[171 173 177])\n(cmd_value.Argv argv:[check_indir '#x' 1] arg_spids:[181 183 187])\n(cmd_value.Argv argv:[check_indir 'x#y'] arg_spids:[189 191])\n(cmd_value.Argv argv:[check_indir 'x/y/foo' foo] arg_spids:[195 197 201])\n(cmd_value.Argv argv:[check_indir 'x@Q' '\\'y\\''] arg_spids:[203 205 209])\ndone\n" [osh_.cc status] Expected 1, got 0 stdout: (cmd_value.Argv argv:[check_indir 'a[0'] arg_spids:[95 97]) (cmd_value.Argv argv:[check_indir 'aa[k'] arg_spids:[101 103]) (cmd_value.Argv argv:[check_indir '!x' a] arg_spids:[107 109 113]) (cmd_value.Argv argv:[check_indir '!a[0]' y] arg_spids:[115 117 121]) (cmd_value.Argv argv:[check_indir 'x:-foo' y] arg_spids:[123 125 129]) (cmd_value.Argv argv:[check_indir 'x:=foo' y] arg_spids:[131 133 137]) (cmd_value.Argv argv:[check_indir 'x:?oops' y] arg_spids:[139 141 145]) (cmd_value.Argv argv:[check_indir 'x:+yy' yy] arg_spids:[147 149 153]) (cmd_value.Argv argv:[check_indir 'x:0' y] arg_spids:[155 157 161]) (cmd_value.Argv argv:[check_indir 'x:0:1' y] arg_spids:[163 165 169]) (cmd_value.Argv argv:[check_indir '!a@' 'a aa'] arg_spids:[171 173 177]) (cmd_value.Argv argv:[check_indir '#x' 1] arg_spids:[181 183 187]) (cmd_value.Argv argv:[check_indir 'x#y'] arg_spids:[189 191]) (cmd_value.Argv argv:[check_indir 'x/y/foo' foo] arg_spids:[195 197 201]) (cmd_value.Argv argv:[check_indir 'x@Q' '\'y\''] arg_spids:[203 205 209]) donestderr: Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand Unhandled SimpleCommand |
osh | 10 Bad var ref with ${!a} stdout: stderr: echo ref ${!a} ^ [ stdin ]:2: fatal: Bad indirect expansion: 'bad var name' |
osh_.py | 10 Bad var ref with ${!a} stdout: stderr: echo ref ${!a} ^ [ stdin ]:2: fatal: Bad indirect expansion: 'bad var name' |
osh_.cc | 10 Bad var ref with ${!a} stdout: stderr: echo ref ${!a} ^~~~ [ stdin ]:2: fatal: Bad indirect expansion: 'bad var name' |
osh_.py | 11 ${!OPTIND} (used by bash completion [osh_.py stdout] Expected 'a\nx\ny\n', got '' [osh_.py status] Expected 0, got 1 stdout: stderr: set 5 echo ${!OPTIND} ^~~~~~ [ stdin ]:2: fatal: Bad indirect expansion: '' |
osh_.cc | 11 ${!OPTIND} (used by bash completion [osh_.cc stdout] Expected 'a\nx\ny\n', got '' [osh_.cc status] Expected 0, got 1 stdout: stderr: set 5 echo ${!OPTIND} ^~~~ [ stdin ]:2: fatal: Bad indirect expansion: '' |