Results for

pass 23
0pass Augmented assignment doesn't work on shell arrays
1pass Augmented assignment with integers
2pass Augmented assignment on string changes to integer
3pass Augmented assignment doesn't work with multiple LHS
4pass proc static check: const can't be mutated
5pass top-level dynamic check: const can't be be mutated
6pass top level: var can be redefined by var/const
7pass setvar mutates local
8pass top level: setvar creates global
9pass top level: setvar mutates var
10pass proc static check: variable changed by setvar must be declared
11pass setglobal
12pass setglobal of undeclared var is allowed
13pass var x, y = 1, 2 is NOT allowed
14pass setvar x, y = 1, 2
15pass setvar to swap List and Dict elements
16pass setvar d.key = 42 (setitem)
17pass setvar mylist[1] = 42 (setitem)
18pass mixing assignment builtins and Oil assignment
19pass setref out = 'YY'
20pass setref composes: 2 levels deep
21FAIL circular dict - TODO 2023-06 REGRESS
22FAIL circular list - TODO 2023-06 REGRESS
23pass exit code of var, const, setvar with command sub
24pass setvar obj[INVALID TYPE] =
23 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

ysh21 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 "(OrderedDict) <'name': 'foo'>\n(OrderedDict) <'name': 123>\n(OrderedDict) <'name': 'mystr'>\n"

(OrderedDict)   <'name': 'foo'>
(OrderedDict)   <'name': 123>
(OrderedDict)   <'name': 'mystr'>
ysh22 circular list - TODO 2023-06 REGRESS

[ysh stdout] Expected '(List) [1, 2, 3]\n(List) [[...], 2, 3]\n' Got '(List) [1, 2, 3]\n'

(List)   [1, 2, 3]