Results for ysh-object.test.sh

statusyshysh-cpp
pass 1313
FAIL 22
total1515
caseyshysh-cppdescription
0pass pass New Obj API
1pass pass Object() creates prototype chain
2pass pass prototype()
3pass pass propView()
4pass pass Mutating method lookup with ->
5pass pass Mutating method must be up the prototype chain, not on the object
6pass pass Copy to Dict with dict(), and mutate
7pass pass setvar obj.attr = and += and ...
8pass pass obj['attr'] not allowed (for now)
9FAIL FAIL setvar obj['attr'] = 3 ?
detailsdetails
10pass pass can't encode objects as JSON
11pass pass Can all builtin methods with s.upper()
12pass pass invokable Obj must be have prototype containing __invoke__ of value.Proc - type -t
13pass pass Object with longer prototype chain
14FAIL FAIL __readonly__ in prototype makes objects readonly
detailsdetails
26 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

ysh9 setvar obj['attr'] = 3 ?

[ysh stdout] Expected '', got '(Obj) ("x":99,"y":4)\n'
[ysh status] Expected 3, got 0

stdout:
(Obj)   ("x":99,"y":4)
stderr:
ysh-cpp9 setvar obj['attr'] = 3 ?

[ysh-cpp stdout] Expected '', got '(Obj) ("x":99,"y":4)\n'
[ysh-cpp status] Expected 3, got 0

stdout:
(Obj)   ("x":99,"y":4)
stderr:
ysh14 __readonly__ in prototype makes objects readonly

[ysh stdout] Expected '', got '(Obj) (__readonly__: true)\n(Int) 140076900235056\n(Int) 140076900235536\n(Obj) (x: 198) --> (__readonly__: true)\n(Int) 140076900236016\n(Int) 198\n'
[ysh status] Expected 0, got 3

stdout:
(Obj)   (__readonly__: true)
(Int)   140076900235056
(Int)   140076900235536
(Obj)   (x: 198) --> (__readonly__: true)
(Int)   140076900236016
(Int)   198
stderr:
  = keys(obj)
         ^~~
[ stdin ]:22: fatal: Arg 1 should be a Dict, got Obj
ysh-cpp14 __readonly__ in prototype makes objects readonly

[ysh-cpp stdout] Expected '', got '(Obj) (__readonly__: true)\n(Int) 5561\n(Int) 10885\n(Obj) (x: 198) --> (__readonly__: true)\n(Int) 9113\n(Int) 198\n'
[ysh-cpp status] Expected 0, got 3

stdout:
(Obj)   (__readonly__: true)
(Int)   5561
(Int)   10885
(Obj)   (x: 198) --> (__readonly__: true)
(Int)   9113
(Int)   198
stderr:
  = keys(obj)
         ^~~
[ stdin ]:22: fatal: Arg 1 should be a Dict, got Obj