spec test index / oilshell.org
| status | ysh | |
| pass | 19 | |
| FAIL | 2 | |
| total | 21 | |
| case | ysh | description | 
| 0 | pass | proc static check: const can't be mutated | 
| 1 | pass | top-level dynamic check: const can't be be mutated | 
| 2 | pass | top level: var can be redefined by var/const | 
| 3 | pass | setvar mutates local | 
| 4 | pass | top level: setvar creates global | 
| 5 | pass | top level: setvar mutates var | 
| 6 | pass | proc static check: variable changed by setvar must be declared | 
| 7 | pass | setglobal | 
| 8 | pass | setglobal of undeclared var is allowed | 
| 9 | pass | var a, b does implicit null init | 
| 10 | pass | var x, y = f() | 
| 11 | pass | const x, y = f() | 
| 12 | pass | setvar x, y = 1, 2 | 
| 13 | pass | setvar to swap List and Dict elements | 
| 14 | pass | setvar d.key = 42 (setitem) | 
| 15 | pass | setvar mylist[1] = 42 (setitem) | 
| 16 | pass | mixing assignment builtins and YSH assignment | 
| 17 | FAIL | circular dict - TODO 2023-06 REGRESS | 
| details | ||
| 18 | FAIL | circular list - TODO 2023-06 REGRESS | 
| details | ||
| 19 | pass | exit code of var, const, setvar with command sub | 
| 20 | pass | setvar obj[INVALID TYPE] = | 
19 passed, 0 OK, 0 not implemented, 0 BUG, 2 failed, 0 timeouts, 0 cases skipped 2 failed under osh
| ysh | 17 circular dict - TODO 2023-06 REGRESS [ysh stdout] Expected "(OrderedDict) <'name': 'foo'>\n(OrderedDict) <'name': 123>\n(OrderedDict) <'name': 'mystr'>\n(OrderedDict) <'name': ...>\n" Got '(Dict) {"name":"foo"}\n(Dict) {"name":123}\n(Dict) {"name":"mystr"}\n(Dict) {"name":{ --> 0x7f795767eb00 }}\n' stdout: (Dict)   {"name":"foo"}
(Dict)   {"name":123}
(Dict)   {"name":"mystr"}
(Dict)   {"name":{ --> 0x7f795767eb00 }}
stderr:  | 
| ysh | 18 circular list - TODO 2023-06 REGRESS [ysh stdout] Expected '(List) [1, 2, 3]\n(List) [[...], 2, 3]\n' Got '(List) [1, 2, 3]\n' stdout: (List) [1, 2, 3]stderr:  |