Results for ysh-blocks.test.sh

statusosh
pass 14
FAIL 2
total16
caseoshdescription
0pass cd accepts a block, runs it in different dir
1pass cd with block: requires explicit command
2pass cd passed block with return 1
3FAIL cd passed a block defined in a different scope
details
4FAIL io->eval() and io.captureStdout() passed a block in different scope
details
5pass block doesn't have its own scope
6pass redirects allowed in words, typed args, and after block
7pass block literal in expression mode: ^(echo $PWD)
8pass block arg as typed expression
9pass Pass invalid typed args
10pass Pass too many typed args
11pass 'builtin' and 'command' with block
12pass Consistency: Exit Status and Blocks
13pass Consistency: Unwanted Blocks Are Errors
14pass Block with Bare Assignments
15pass Proc that doesn't take a block
14 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped
2 failed under osh

Details on runs that didn't PASS

osh3 cd passed a block defined in a different scope

[osh status] Expected 0, got 1

stdout:
stderr: 
    var b = ^(echo "i = $i")
                        ^~
[ stdin ]:9: fatal: Undefined variable 'i'
osh4 io->eval() and io.captureStdout() passed a block in different scope

[osh stdout] Expected '', got 'i = 42\ni = 42\n(Dict) {"x":"x"}\nstdout i = 42\n'

stdout:
i = 42
i = 42
(Dict)   {"x":"x"}
stdout i = 42
stderr: