Results for ble-features.test.sh

statusoshosh_.pyosh_.cc
pass 633
ok 886
FAIL 035
total141414
caseoshosh_.pyosh_.ccdescription
0ok ok ok [bash_unset] local-unset / dynamic-unset for localvar
detailsdetailsdetails
1ok ok ok [bash_unset] local-unset / dynamic-unset for localvar (mutated from tempenv)
detailsdetailsdetails
2pass pass pass [bash_unset] local-unset / dynamic-unset for tempenv
3ok ok FAIL [bash_unset] function call with tempenv vs tempenv-eval
detailsdetailsdetails
4ok ok FAIL [bash_unset] localvar-inherit from tempenv
detailsdetailsdetails
5pass pass pass [bash_unset] nested context by tempenv-eval
6ok ok ok [bash_unset] local-unset / dynamic-unset for localvar on nested-context
detailsdetailsdetails
7ok ok ok [bash_unset] dynamic-unset for nested localvars
detailsdetailsdetails
8ok ok ok [bash_unset] dynamic-unset for nested tempenvs
detailsdetailsdetails
9ok ok ok [bash_unset] local-unset for nested tempenvs
detailsdetailsdetails
10pass FAIL FAIL [compat_array] ${arr} is ${arr[0]}
detailsdetails
11pass FAIL FAIL [compat_array] scalar write to arrays
detailsdetails
12pass FAIL FAIL [compat_array] scalar write to associative arrays
detailsdetails
13pass pass pass [compat_array] ${alpha@a}
12 passed, 22 OK, 0 not implemented, 0 BUG, 8 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

osh0 [bash_unset] local-unset / dynamic-unset for localvar

stdout:
[global,local,(unset)] v: global
[global,local,(unlocal)] v: global
stderr:
osh_.py0 [bash_unset] local-unset / dynamic-unset for localvar

stdout:
[global,local,(unset)] v: global
[global,local,(unlocal)] v: global
stderr:
osh_.cc0 [bash_unset] local-unset / dynamic-unset for localvar

stdout:
[global,local,(unset)] v: global
[global,local,(unlocal)] v: global
stderr:
dumb_alloc:
	gNumNew = 2907
	gNumDelete = 317
	gMemPos = 94544

	gNumMalloc = 296
	gNumFree = 0
	gMemPos2 = 13440
osh1 [bash_unset] local-unset / dynamic-unset for localvar (mutated from tempenv)

stdout:
[global,tempenv,local,(unset)] v: tempenv
[global,tempenv,local,(unlocal)] v: tempenv
stderr:
osh_.py1 [bash_unset] local-unset / dynamic-unset for localvar (mutated from tempenv)

stdout:
[global,tempenv,local,(unset)] v: tempenv
[global,tempenv,local,(unlocal)] v: tempenv
stderr:
osh_.cc1 [bash_unset] local-unset / dynamic-unset for localvar (mutated from tempenv)

stdout:
[global,tempenv,local,(unset)] v: tempenv
[global,tempenv,local,(unlocal)] v: tempenv
stderr:
dumb_alloc:
	gNumNew = 2924
	gNumDelete = 320
	gMemPos = 94736

	gNumMalloc = 287
	gNumFree = 0
	gMemPos2 = 13312
osh3 [bash_unset] function call with tempenv vs tempenv-eval

stdout:
[global] v: global
[global,local] v: (unset)
[global,local+unset] v: global
[global,local+unlocal] v: global
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,local+unset] v: tempenv
[global,tempenv,local+unlocal] v: tempenv
[global,tempenv,(eval)] v: tempenv
[global,tempenv,(eval),local] v: (unset)
[global,tempenv,(eval),local+unset] v: tempenv
[global,tempenv,(eval),local+unlocal] v: tempenv
stderr:
osh_.py3 [bash_unset] function call with tempenv vs tempenv-eval

stdout:
[global] v: global
[global,local] v: (unset)
[global,local+unset] v: global
[global,local+unlocal] v: global
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,local+unset] v: tempenv
[global,tempenv,local+unlocal] v: tempenv
[global,tempenv,(eval)] v: tempenv
[global,tempenv,(eval),local] v: (unset)
[global,tempenv,(eval),local+unset] v: tempenv
[global,tempenv,(eval),local+unlocal] v: tempenv
stderr:
osh_.cc3 [bash_unset] function call with tempenv vs tempenv-eval

[osh_.cc stdout] Expected '[global] v: global\n[global,local] v: (unset)\n[global,local+unset] v: global\n[global,local+unlocal] v: global\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,local+unset] v: tempenv\n[global,tempenv,local+unlocal] v: tempenv\n[global,tempenv,(eval)] v: tempenv\n[global,tempenv,(eval),local] v: (unset)\n[global,tempenv,(eval),local+unset] v: tempenv\n[global,tempenv,(eval),local+unlocal] v: tempenv\n', got '[global] v: global\n[global,local] v: (unset)\n[global,local+unset] v: global\n[global] v: global\n[global,local] v: (unset)\n[global,local+unlocal] v: global\n[global] v: global\n[global,local] v: (unset)\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,local+unset] v: tempenv\n[global] v: global\n[global,local] v: (unset)\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,local+unlocal] v: tempenv\n[global] v: global\n[global,local] v: (unset)\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,(eval)] v: tempenv\n[global,tempenv,(eval),local] v: (unset)\n[global,tempenv,(eval),local+unset] v: tempenv\n[global] v: global\n[global,local] v: (unset)\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,(eval)] v: tempenv\n[global,tempenv,(eval),local] v: (unset)\n[global,tempenv,(eval),local+unlocal] v: tempenv\n[global] v: global\n[global,local] v: (unset)\n[global,tempenv] v: tempenv\n[global,tempenv,local] v: (unset)\n[global,tempenv,(eval)] v: tempenv\n[global,tempenv,(eval),local] v: (unset)\n'

stdout:
[global] v: global
[global,local] v: (unset)
[global,local+unset] v: global
[global] v: global
[global,local] v: (unset)
[global,local+unlocal] v: global
[global] v: global
[global,local] v: (unset)
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,local+unset] v: tempenv
[global] v: global
[global,local] v: (unset)
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,local+unlocal] v: tempenv
[global] v: global
[global,local] v: (unset)
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,(eval)] v: tempenv
[global,tempenv,(eval),local] v: (unset)
[global,tempenv,(eval),local+unset] v: tempenv
[global] v: global
[global,local] v: (unset)
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,(eval)] v: tempenv
[global,tempenv,(eval),local] v: (unset)
[global,tempenv,(eval),local+unlocal] v: tempenv
[global] v: global
[global,local] v: (unset)
[global,tempenv] v: tempenv
[global,tempenv,local] v: (unset)
[global,tempenv,(eval)] v: tempenv
[global,tempenv,(eval),local] v: (unset)
stderr:
dumb_alloc:
	gNumNew = 3280
	gNumDelete = 414
	gMemPos = 106544

	gNumMalloc = 320
	gNumFree = 3
	gMemPos2 = 14208
osh4 [bash_unset] localvar-inherit from tempenv

stdout:
[global,(local)] v: (unset)
[global,tempenv,(local)] v: (unset)
[xglobal,(local)] v: (unset)
[global,(func),(local)] v: (unset)
[global,tempenv,(func),(local)] v: (unset)
[xglobal,(func),(local)] v: (unset)
[global,local,(func),(local)] v: (unset)
stderr:
osh_.py4 [bash_unset] localvar-inherit from tempenv

stdout:
[global,(local)] v: (unset)
[global,tempenv,(local)] v: (unset)
[xglobal,(local)] v: (unset)
[global,(func),(local)] v: (unset)
[global,tempenv,(func),(local)] v: (unset)
[xglobal,(func),(local)] v: (unset)
[global,local,(func),(local)] v: (unset)
stderr:
osh_.cc4 [bash_unset] localvar-inherit from tempenv

[osh_.cc stdout] Expected '[global,(local)] v: (unset)\n[global,tempenv,(local)] v: (unset)\n[xglobal,(local)] v: (unset)\n[global,(func),(local)] v: (unset)\n[global,tempenv,(func),(local)] v: (unset)\n[xglobal,(func),(local)] v: (unset)\n[global,local,(func),(local)] v: (unset)\n', got '[global,(local)] v: (unset)\n[global,tempenv,(local)] v: (unset)\n[xglobal,(local)] v: (unset)\n[global,(local)] v: (unset)\n[global,tempenv,(local)] v: (unset)\n[global,(func),(local)] v: (unset)\n[global,tempenv,(func),(local)] v: (unset)\n[xglobal,(func),(local)] v: (unset)\n[global,(local)] v: (unset)\n[global,tempenv,(local)] v: (unset)\n[global,(func),(local)] v: (unset)\n[global,tempenv,(func),(local)] v: (unset)\n[global,local,(func),(local)] v: (unset)\n'

stdout:
[global,(local)] v: (unset)
[global,tempenv,(local)] v: (unset)
[xglobal,(local)] v: (unset)
[global,(local)] v: (unset)
[global,tempenv,(local)] v: (unset)
[global,(func),(local)] v: (unset)
[global,tempenv,(func),(local)] v: (unset)
[xglobal,(func),(local)] v: (unset)
[global,(local)] v: (unset)
[global,tempenv,(local)] v: (unset)
[global,(func),(local)] v: (unset)
[global,tempenv,(func),(local)] v: (unset)
[global,local,(func),(local)] v: (unset)
stderr:
dumb_alloc:
	gNumNew = 3691
	gNumDelete = 483
	gMemPos = 118416

	gNumMalloc = 347
	gNumFree = 5
	gMemPos2 = 14592
osh6 [bash_unset] local-unset / dynamic-unset for localvar on nested-context

stdout:
[global,tempenv1,local1,tempenv2,(eval),local2,(unset)] v: local1
[global,tempenv1,local1,tempenv2,(eval),local2,(unlocal)] v: local1
stderr:
osh_.py6 [bash_unset] local-unset / dynamic-unset for localvar on nested-context

stdout:
[global,tempenv1,local1,tempenv2,(eval),local2,(unset)] v: local1
[global,tempenv1,local1,tempenv2,(eval),local2,(unlocal)] v: local1
stderr:
osh_.cc6 [bash_unset] local-unset / dynamic-unset for localvar on nested-context

stdout:
[global,tempenv1,local1,tempenv2,(eval),local2,(unset)] v: local1
[global,tempenv1,local1,tempenv2,(eval),local2,(unlocal)] v: local1
stderr:
dumb_alloc:
	gNumNew = 2535
	gNumDelete = 277
	gMemPos = 85168

	gNumMalloc = 204
	gNumFree = 0
	gMemPos2 = 12768
osh7 [bash_unset] dynamic-unset for nested localvars

stdout:
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local3
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local2 (unlocal 1)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local1 (unlocal 2)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: tempenv1 (unlocal 3)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: global (unlocal 4)
stderr:
osh_.py7 [bash_unset] dynamic-unset for nested localvars

stdout:
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local3
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local2 (unlocal 1)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local1 (unlocal 2)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: tempenv1 (unlocal 3)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: global (unlocal 4)
stderr:
osh_.cc7 [bash_unset] dynamic-unset for nested localvars

stdout:
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local3
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local2 (unlocal 1)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: local1 (unlocal 2)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: tempenv1 (unlocal 3)
[global,tempenv1/local1,tempenv2/local2,tempenv3/local3] v: global (unlocal 4)
stderr:
dumb_alloc:
	gNumNew = 4237
	gNumDelete = 561
	gMemPos = 138992

	gNumMalloc = 771
	gNumFree = 0
	gMemPos2 = 26144
osh8 [bash_unset] dynamic-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unlocal 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unlocal 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unlocal 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unlocal 4)
stderr:
osh_.py8 [bash_unset] dynamic-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unlocal 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unlocal 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unlocal 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unlocal 4)
stderr:
osh_.cc8 [bash_unset] dynamic-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unlocal 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unlocal 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unlocal 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unlocal 4)
stderr:
dumb_alloc:
	gNumNew = 3945
	gNumDelete = 501
	gMemPos = 129600

	gNumMalloc = 768
	gNumFree = 0
	gMemPos2 = 24720
osh9 [bash_unset] local-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unset 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unset 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unset 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unset 4)
stderr:
osh_.py9 [bash_unset] local-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unset 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unset 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unset 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unset 4)
stderr:
osh_.cc9 [bash_unset] local-unset for nested tempenvs

stdout:
[global,tempenv1,tempenv2,tempenv3] v: tempenv3
[global,tempenv1,tempenv2,tempenv3] v: tempenv2 (unset 1)
[global,tempenv1,tempenv2,tempenv3] v: tempenv1 (unset 2)
[global,tempenv1,tempenv2,tempenv3] v: global (unset 3)
[global,tempenv1,tempenv2,tempenv3] v: (unset) (unset 4)
stderr:
dumb_alloc:
	gNumNew = 3483
	gNumDelete = 441
	gMemPos = 117200

	gNumMalloc = 591
	gNumFree = 0
	gMemPos2 = 21472
osh_.py10 [compat_array] ${arr} is ${arr[0]}

[osh_.py stdout] Expected "['foo', 'foo']\n", got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
  argv.py "$arr" "${arr}"
           ^~~~
[ stdin ]:5: fatal: Array 'arr' can't be referred to as a scalar (without @ or *)
osh_.cc10 [compat_array] ${arr} is ${arr[0]}

[osh_.cc stdout] Expected "['foo', 'foo']\n", got ''
[osh_.cc status] Expected 0, got 1

stdout:
stderr: 
  argv.py "$arr" "${arr}"
  ^~~~~~~
[ stdin ]:5: fatal: Array 'arr' can't be referred to as a scalar (without @ or *)

dumb_alloc:
	gNumNew = 2376
	gNumDelete = 197
	gMemPos = 79408

	gNumMalloc = 301
	gNumFree = 0
	gMemPos2 = 18384
osh_.py11 [compat_array] scalar write to arrays

[osh_.py stdout] Expected "['2', '0', '0']\n", got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
  : $(( a++ ))
        ^
[ stdin ]:8: fatal: Expected a value convertible to integer, got value.MaybeStrArray
osh_.cc11 [compat_array] scalar write to arrays

[osh_.cc stdout] Expected "['2', '0', '0']\n", got ''
[osh_.cc status] Expected 0, got 1

stdout:
stderr: 
  : $(( a++ ))
  ^
[ stdin ]:8: fatal: Expected a value convertible to integer, got value.MaybeStrArray

dumb_alloc:
	gNumNew = 2110
	gNumDelete = 167
	gMemPos = 71888

	gNumMalloc = 145
	gNumFree = 0
	gMemPos2 = 12544
osh_.py12 [compat_array] scalar write to associative arrays

[osh_.py stdout] Expected "['2', 'hello', 'world']\n", got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
  ((d++))
    ^
[ stdin ]:11: fatal: Expected a value convertible to integer, got value.AssocArray
osh_.cc12 [compat_array] scalar write to associative arrays

[osh_.cc stdout] Expected "['2', 'hello', 'world']\n", got ''
[osh_.cc status] Expected 0, got 1

stdout:
stderr: 
  ((d++))
  ^~
[ stdin ]:11: fatal: Expected a value convertible to integer, got value.AssocArray

dumb_alloc:
	gNumNew = 2276
	gNumDelete = 206
	gMemPos = 77136

	gNumMalloc = 160
	gNumFree = 0
	gMemPos2 = 12784