Results for ysh-builtin-eval.test.sh

statusyshysh-cpp
pass 55
FAIL 88
total1313
caseyshysh-cppdescription
0pass pass Eval does not take a literal block - can restore this later
1pass pass Eval a block within a proc
2pass pass Eval block created by calling a proc
3pass pass eval (block) can read variables like eval ''
4FAIL FAIL eval should have a sandboxed mode
detailsdetails
5FAIL FAIL eval with argv bindings
detailsdetails
6FAIL FAIL eval lines with argv bindings
detailsdetails
7FAIL FAIL eval with custom arg0
detailsdetails
8FAIL FAIL eval with vars bindings
detailsdetails
9FAIL FAIL dynamic binding names and mutation
detailsdetails
10FAIL FAIL binding procs in the eval-ed namespace
detailsdetails
11FAIL FAIL vars initializes the variable frame, but does not remember it
detailsdetails
12pass pass eval 'mystring' vs. eval (myblock)
10 passed, 0 OK, 0 not implemented, 0 BUG, 8 failed, 0 timeouts, 0 cases skipped
8 failed under osh

Details on runs that didn't PASS

ysh4 eval should have a sandboxed mode

[ysh stdout] Expected 'TODO\n', got ''

stdout:
stderr: 
    push-frame {
               ^
[ stdin ]:4: fatal: 'push-frame' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh-cpp4 eval should have a sandboxed mode

[ysh-cpp stdout] Expected 'TODO\n', got ''

stdout:
stderr: 
    push-frame {
               ^
[ stdin ]:4: fatal: 'push-frame' appears to be external. External commands don't accept typed args (OILS-ERR-200)
ysh5 eval with argv bindings

[ysh stdout] Expected 'foo bar baz\n(List) ["foo","bar","baz"]\n' Got ''
[ysh status] Expected 0, got 2

stdout:
stderr: 
  eval (^(echo "$@")) (pos_args=:| foo bar baz |)
                      ^
[ stdin ]:1: Invalid word while parsing command line (Id.Op_LParen)
ysh-cpp5 eval with argv bindings

[ysh-cpp stdout] Expected 'foo bar baz\n(List) ["foo","bar","baz"]\n' Got ''
[ysh-cpp status] Expected 0, got 2

stdout:
stderr: 
  eval (^(echo "$@")) (pos_args=:| foo bar baz |)
                      ^
[ stdin ]:1: Invalid word while parsing command line (Id.Op_LParen)
ysh6 eval lines with argv bindings

[ysh stdout] Expected 'a\nc\n', got ''

stdout:
stderr: 
    while read --line {
               ^~~~~~
[ stdin ]:2: 'read' got invalid flag '--line'
ysh-cpp6 eval lines with argv bindings

[ysh-cpp stdout] Expected 'a\nc\n', got ''

stdout:
stderr: 
    while read --line {
               ^~~~~~
[ stdin ]:2: 'read' got invalid flag '--line'
ysh7 eval with custom arg0

[ysh stdout] Expected 'my arg0\n', got ''
[ysh status] Expected 0, got 2

stdout:
stderr: 
  eval (^(write $0)) (arg0="my arg0")
                     ^
[ stdin ]:1: Invalid word while parsing command line (Id.Op_LParen)
ysh-cpp7 eval with custom arg0

[ysh-cpp stdout] Expected 'my arg0\n', got ''
[ysh-cpp status] Expected 0, got 2

stdout:
stderr: 
  eval (^(write $0)) (arg0="my arg0")
                     ^
[ stdin ]:1: Invalid word while parsing command line (Id.Op_LParen)
ysh8 eval with vars bindings

[ysh stdout] Expected 'abc\n123\n', got '(Str) "abc"\n'
[ysh status] Expected 0, got 3

stdout:
(Str)   "abc"
stderr:
  eval (^(pp test_ (myVar)), vars={ 'myVar': '123' })
       ^
[ stdin ]:3: fatal: Got unexpected named args: vars
ysh-cpp8 eval with vars bindings

[ysh-cpp stdout] Expected 'abc\n123\n', got '(Str) "abc"\n'
[ysh-cpp status] Expected 0, got 3

stdout:
(Str)   "abc"
stderr:
  eval (^(pp test_ (myVar)), vars={ 'myVar': '123' })
       ^
[ stdin ]:3: fatal: Got unexpected named args: vars
ysh9 dynamic binding names and mutation

[ysh stdout] Expected '(Dict) {"a":1}\n(Dict) {"b":2}\n(Dict) {"c":3}\n(List) [{"a":1,"d":0},{"b":2,"d":0},{"c":3,"d":0}]\n' Got ''
[ysh status] Expected 0, got 3

stdout:
stderr: 
      eval (block, vars={ binding: _ })
           ^
[ stdin ]:7: fatal: Got unexpected named args: vars
ysh-cpp9 dynamic binding names and mutation

[ysh-cpp stdout] Expected '(Dict) {"a":1}\n(Dict) {"b":2}\n(Dict) {"c":3}\n(List) [{"a":1,"d":0},{"b":2,"d":0},{"c":3,"d":0}]\n' Got ''
[ysh-cpp status] Expected 0, got 3

stdout:
stderr: 
      eval (block, vars={ binding: _ })
           ^
[ stdin ]:7: fatal: Got unexpected named args: vars
ysh10 binding procs in the eval-ed namespace

[ysh stdout] Expected 'flag -h --help\narg file\n', got ''
[ysh status] Expected 0, got 3

stdout:
stderr: 
    eval (block, vars={ 'flag': __flag, 'arg': __arg })
         ^
[ stdin ]:10: fatal: Got unexpected named args: vars
ysh-cpp10 binding procs in the eval-ed namespace

[ysh-cpp stdout] Expected 'flag -h --help\narg file\n', got ''
[ysh-cpp status] Expected 0, got 3

stdout:
stderr: 
    eval (block, vars={ 'flag': __flag, 'arg': __arg })
         ^
[ stdin ]:10: fatal: Got unexpected named args: vars
ysh11 vars initializes the variable frame, but does not remember it

[ysh stdout] Expected '(Dict) {"foo":123}\n', got ''
[ysh status] Expected 0, got 2

stdout:
stderr: 
  eval (^(var bar = 321), vars=vars)
                       ^
[ stdin ]:2: Syntax error in expression (near Id.Eof_RParen)
ysh-cpp11 vars initializes the variable frame, but does not remember it

[ysh-cpp stdout] Expected '(Dict) {"foo":123}\n', got ''
[ysh-cpp status] Expected 0, got 2

stdout:
stderr: 
  eval (^(var bar = 321), vars=vars)
                       ^
[ stdin ]:2: Syntax error in expression (near Id.Eof_RParen)