~/oil/_clone/ble.sh ~/oil ble.sh: insane environment: $USER is empty. ble.sh: modified USER=uke ble.sh: suspicious environment: $LANG is empty. shopt -s checkwinsize ^~~~~ out/ble.osh:2815: 'shopt' got invalid option 'checkwinsize' ble/term.sh: updating tput cache for TERM=xterm... ble/term.sh: updating tput cache for TERM=xterm... done osh warning: The 'RETURN' hook isn't implemented real 8.348 user 7.994 sys 0.212 real 0.986 user 0.207 sys 0.018 declare -i i=1 ^~~~~~~ lib/test-util.sh:175: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -u u=a ^~~~~~~ lib/test-util.sh:181: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -l l=B ^~~~~~~ lib/test-util.sh:182: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -c c=c ^~ lib/test-util.sh:183: 'declare' doesn't accept flag -c Running out/ble.osh --lib DONE Running out/ble.osh --lib Running lib/test-main.sh lib/test-main.sh:25: set -o posix; f2; ret=$?; set +o posix --- 1086.ret.expect 2025-03-02 00:01:50.523462208 +0000 +++ 1086.ret.result 2025-03-02 00:01:50.523462208 +0000 @@ -1 +1 @@ -0 +1 lib/test-main.sh:57: ! ble/bin#has ble_test_dummy_4 --- 1090.exit.expect 2025-03-02 00:01:50.745461315 +0000 +++ 1090.exit.result 2025-03-02 00:01:50.745461315 +0000 @@ -1 +1 @@ -0 +1 lib/test-main.sh:88: ble/util/readlink f.txt [[ $ret != /* ]] && ret=${PWD%/}/$ret --- 1093.ret.expect 2025-03-02 00:01:50.871460807 +0000 +++ 1093.ret.result 2025-03-02 00:01:50.872460803 +0000 @@ -1 +1 @@ -/tmp/blesh/1000/999.test/1093.d/ab/cd/ef/file.txt +/tmp/blesh/1000/999.test/1093.d/ef/file.txt lib/test-main.sh:110: path=phys.link/1.txt ble/util/readlink/.resolve-physical-directory declare -p path PWD >&2 [[ $path == */phys.dir/1.txt && $PWD == "$pwd" ]] --- 1093.exit.expect 2025-03-02 00:01:51.083459954 +0000 +++ 1093.exit.result 2025-03-02 00:01:51.084459950 +0000 @@ -1 +1 @@ -0 +1 <STDERR> declare -- path=/tmp/blesh/1000/999.test/1093.d/1.txt declare -x PWD=/tmp/blesh/1000/999.test/1093.d </STDERR> lib/test-main.sh:131: [[ ${value//$pattern/$'\n'} == $'\n'hello$'\n' ]] --- 1126.exit.expect 2025-03-02 00:01:51.173459592 +0000 +++ 1126.exit.result 2025-03-02 00:01:51.174459588 +0000 @@ -1 +1 @@ -0 +1 82.7% [section] ble/main: 24/29 (5 fail, 0 crash, 0 skip) DONE Running lib/test-main.sh Running lib/test-util.sh lib/test-util.sh:190: ble/variable#get-attr i; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.614453792 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.614453792 +0000 @@ -1 +1 @@ -i + lib/test-util.sh:191: ble/variable#get-attr x; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.648453655 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.649453651 +0000 @@ -1 +1 @@ -x + lib/test-util.sh:192: ble/variable#get-attr r; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.682453518 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.682453518 +0000 @@ -1 +1 @@ -r + lib/test-util.sh:195: ble/variable#get-attr u; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.727453337 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.728453333 +0000 @@ -1 +1 @@ -u + lib/test-util.sh:196: ble/variable#get-attr l; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.762453196 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.762453196 +0000 @@ -1 +1 @@ -l + lib/test-util.sh:197: ble/variable#get-attr c; ret=$attr --- 1137.ret.expect 2025-03-02 00:01:52.796453060 +0000 +++ 1137.ret.result 2025-03-02 00:01:52.796453060 +0000 @@ -1 +1 @@ -c + lib/test-util.sh:203: ble/variable#has-attr i i --- 1137.exit.expect 2025-03-02 00:01:52.841452878 +0000 +++ 1137.exit.result 2025-03-02 00:01:52.841452878 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:204: ble/variable#has-attr x x --- 1137.exit.expect 2025-03-02 00:01:52.874452746 +0000 +++ 1137.exit.result 2025-03-02 00:01:52.875452742 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:205: ble/variable#has-attr r r --- 1137.exit.expect 2025-03-02 00:01:52.908452609 +0000 +++ 1137.exit.result 2025-03-02 00:01:52.908452609 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:212: ble/variable#has-attr u u --- 1137.exit.expect 2025-03-02 00:01:52.998452246 +0000 +++ 1137.exit.result 2025-03-02 00:01:52.998452246 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:213: ble/variable#has-attr l l --- 1137.exit.expect 2025-03-02 00:01:53.032452110 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.032452110 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:214: ble/variable#has-attr c c --- 1137.exit.expect 2025-03-02 00:01:53.065451977 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.066451973 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:226: ble/is-inttype i --- 1137.exit.expect 2025-03-02 00:01:53.155451615 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.156451611 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:228: ble/is-readonly r --- 1137.exit.expect 2025-03-02 00:01:53.201451429 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.202451425 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:231: ble/is-transformed u --- 1137.exit.expect 2025-03-02 00:01:53.248451240 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.249451236 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:232: ble/is-transformed l --- 1137.exit.expect 2025-03-02 00:01:53.281451107 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.282451103 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:233: ble/is-transformed c --- 1137.exit.expect 2025-03-02 00:01:53.314450975 +0000 +++ 1137.exit.result 2025-03-02 00:01:53.315450971 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:251: is-global v0 --- 1172.exit.expect 2025-03-02 00:01:53.378450717 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.379450713 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:252: is-global v1 --- 1172.exit.expect 2025-03-02 00:01:53.417450560 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.418450556 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:257: ble/variable#is-global v0 --- 1172.exit.expect 2025-03-02 00:01:53.510450186 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.510450186 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:258: ble/variable#is-global v1 --- 1172.exit.expect 2025-03-02 00:01:53.549450029 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.549450029 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:263: ble/variable#is-global v0u --- 1172.exit.expect 2025-03-02 00:01:53.642449654 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.643449650 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:265: ble/variable#is-global v1u --- 1172.exit.expect 2025-03-02 00:01:53.682449493 +0000 +++ 1172.exit.result 2025-03-02 00:01:53.683449489 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:597: ble/string#split-lines a "" ; status --- 1220.stdout.expect 2025-03-02 00:01:55.825440604 +0000 +++ 1220.stdout.result 2025-03-02 00:01:55.825440604 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:599: ble/string#split-lines a " " ; status --- 1220.stdout.expect 2025-03-02 00:01:55.872440350 +0000 +++ 1220.stdout.result 2025-03-02 00:01:55.873440345 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:600: ble/string#split-lines a "1 " ; status --- 1220.stdout.expect 2025-03-02 00:01:55.907440162 +0000 +++ 1220.stdout.result 2025-03-02 00:01:55.908440156 +0000 @@ -1 +1 @@ -2:(1 ) +1:(1) lib/test-util.sh:601: ble/string#split-lines a " 2" ; status --- 1220.stdout.expect 2025-03-02 00:01:55.942439973 +0000 +++ 1220.stdout.result 2025-03-02 00:01:55.942439973 +0000 @@ -1 +1 @@ -2:( 2) +0:() lib/test-util.sh:602: ble/string#split-lines a "1 3" ; status --- 1220.stdout.expect 2025-03-02 00:01:55.977439785 +0000 +++ 1220.stdout.result 2025-03-02 00:01:55.977439785 +0000 @@ -1 +1 @@ -3:(1 3) +1:(1) lib/test-util.sh:782: ble/string#quote-command echo hello world --- 1238.ret.expect 2025-03-02 00:01:57.743430271 +0000 +++ 1238.ret.result 2025-03-02 00:01:57.744430265 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:784: ble/string#quote-command echo "'test'" --- 1238.ret.expect 2025-03-02 00:01:57.789430023 +0000 +++ 1238.ret.result 2025-03-02 00:01:57.789430023 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:786: ble/string#quote-command echo a{1..4} --- 1238.ret.expect 2025-03-02 00:01:57.834429781 +0000 +++ 1238.ret.result 2025-03-02 00:01:57.835429775 +0000 @@ -1 +1 @@ -echo 'a1' 'a2' 'a3' 'a4' +echo a1 a2 a3 a4 lib/test-util.sh:790: ble/util/print-quoted-command echo hello world --- 1238.stdout.expect 2025-03-02 00:01:57.893429463 +0000 +++ 1238.stdout.result 2025-03-02 00:01:57.894429457 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:792: ble/util/print-quoted-command echo "'test'" --- 1238.stdout.expect 2025-03-02 00:01:57.942429199 +0000 +++ 1238.stdout.result 2025-03-02 00:01:57.942429199 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:794: ble/util/print-quoted-command echo a{1..4} --- 1238.stdout.expect 2025-03-02 00:01:57.990428940 +0000 +++ 1238.stdout.result 2025-03-02 00:01:57.990428940 +0000 @@ -1 +1 @@ -echo 'a1' 'a2' 'a3' 'a4' +echo a1 a2 a3 a4 lib/test-util.sh:843: ble/util/strlen α --- 1253.ret.expect 2025- ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) 03-02 00:01:58.658425342 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.658425342 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:844: ble/util/strlen αβγ --- 1253.ret.expect 2025-03-02 00:01:58.691425164 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.692425158 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:845: ble/util/strlen あ --- 1253.ret.expect 2025-03-02 00:01:58.725424981 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.725424981 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:846: ble/util/strlen あいう --- 1253.ret.expect 2025-03-02 00:01:58.759424797 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.760424792 +0000 @@ -1 +1 @@ -9 +3 lib/test-util.sh:847: ble/util/strlen aα --- 1253.ret.expect 2025-03-02 00:01:58.793424614 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.794424609 +0000 @@ -1 +1 @@ -3 +2 lib/test-util.sh:848: ble/util/strlen aαあ --- 1253.ret.expect 2025-03-02 00:01:58.827424431 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.827424431 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:852: ble/util/strlen α --- 1253.ret.expect 2025-03-02 00:01:58.872424189 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.872424189 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:853: ble/util/strlen あ --- 1253.ret.expect 2025-03-02 00:01:58.905424011 +0000 +++ 1253.ret.result 2025-03-02 00:01:58.906424006 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:885: ble/util/substr あいう 0 3 --- 1270.ret.expect 2025-03-02 00:01:59.257422115 +0000 +++ 1270.ret.result 2025-03-02 00:01:59.258422109 +0000 @@ -1 +1 @@ -あ +あいう lib/test-util.sh:886: ble/util/substr あいう 3 6 --- 1270.ret.expect 2025-03-02 00:01:59.291421931 +0000 +++ 1270.ret.result 2025-03-02 00:01:59.292421926 +0000 @@ -1 +1 @@ -いう + lib/test-util.sh:1243: ble/util/mapfile a < <(echo); status --- 1280.stdout.expect 2025-03-02 00:02:03.948400540 +0000 +++ 1280.stdout.result 2025-03-02 00:02:03.948400540 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1244: ble/util/mapfile a < <(echo;echo); status --- 1280.stdout.expect 2025-03-02 00:02:03.987400231 +0000 +++ 1280.stdout.result 2025-03-02 00:02:03.987400231 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:1245: ble/util/mapfile a < <(echo a;echo;echo b); status --- 1280.stdout.expect 2025-03-02 00:02:04.025399929 +0000 +++ 1280.stdout.result 2025-03-02 00:02:04.026399921 +0000 @@ -1 +1 @@ -3:(a b) +1:(a) lib/test-util.sh:1263: ble/util/assign-array a echo; status --- 1280.stdout.expect 2025-03-02 00:02:04.167398803 +0000 +++ 1280.stdout.result 2025-03-02 00:02:04.168398795 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1266: ble/util/assign-array a "echo; echo; echo"; status --- 1280.stdout.expect 2025-03-02 00:02:04.238398239 +0000 +++ 1280.stdout.result 2025-03-02 00:02:04.239398231 +0000 @@ -1 +1 @@ -3:( ) +0:() lib/test-util.sh:1267: ble/util/assign-array a "echo 1; echo; echo 2"; status --- 1280.stdout.expect 2025-03-02 00:02:04.277397930 +0000 +++ 1280.stdout.result 2025-03-02 00:02:04.278397922 +0000 @@ -1 +1 @@ -3:(1 2) +1:(1) lib/test-util.sh:1364: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.341389487 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.341389487 +0000 @@ -1,2 +1 @@ pre -original <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1366: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.414388908 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.414388908 +0000 @@ -1,3 +1,2 @@ pre -original post <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1368: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.486388336 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.487388329 +0000 @@ -1,3 +1,2 @@ A -original post <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1370: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.559387757 +0000 +++ 1364.st ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#pop: echo is not a function. ble/function#pop: echo is not a function. dout.result 2025-03-02 00:02:05.559387757 +0000 @@ -1,3 +1,2 @@ A -original B <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1372: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.632387178 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.633387170 +0000 @@ -1,5 +1,4 @@ A [ -original ] B <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1378: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.709386567 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.709386567 +0000 @@ -1,5 +1,4 @@ A [ -original quick ] B <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1381: f1 --- 1364.stdout.expect 2025-03-02 00:02:05.763386139 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.763386139 +0000 @@ -1 +1 @@ -original + --- 1364.exit.expect 2025-03-02 00:02:05.783385980 +0000 +++ 1364.exit.result 2025-03-02 00:02:05.784385972 +0000 @@ -1 +1 @@ -0 +127 <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1382: f1 1 --- 1364.stdout.expect 2025-03-02 00:02:05.831385599 +0000 +++ 1364.stdout.result 2025-03-02 00:02:05.831385599 +0000 @@ -1 +1 @@ -original 1 + --- 1364.exit.expect 2025-03-02 00:02:05.851385440 +0000 +++ 1364.exit.result 2025-03-02 00:02:05.852385432 +0000 @@ -1 +1 @@ -0 +127 <STDERR> ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:5028: 'ble/function#advice/original:f1' not found (OILS-ERR-100) </STDERR> lib/test-util.sh:1395: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 00:02:05.980384417 +0000 +++ 1385.stdout.result 2025-03-02 00:02:05.980384417 +0000 @@ -1,3 +1,3 @@ A -(1 2 3) +1 2 3 Z lib/test-util.sh:1397: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 00:02:06.027384213 +0000 +++ 1385.stdout.result 2025-03-02 00:02:06.028384209 +0000 @@ -1,5 +1,3 @@ [ -A -(1 2 3) -Z +1 2 3 ] lib/test-util.sh:1400: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 00:02:06.076384008 +0000 +++ 1385.stdout.result 2025-03-02 00:02:06.076384008 +0000 @@ -1,3 +1 @@ -A -(1 2 3) -Z +1 2 3 lib/test-util.sh:1402: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 00:02:06.115383845 +0000 +++ 1385.stdout.result 2025-03-02 00:02:06.116383841 +0000 @@ -1 +1 @@ -(1 2 3) +1 2 3 lib/test-util.sh:1404: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 00:02:06.153383686 +0000 +++ 1385.stdout.result 2025-03-02 00:02:06.154383682 +0000 @@ -1 +1 @@ -[1 2 3] +1 2 3 lib/test-util.sh:1405: ble/is-function echo --- 1385.exit.expect 2025-03-02 00:02:06.186383548 +0000 +++ 1385.exit.result 2025-03-02 00:02:06.187383544 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1406: ble/function#pop echo --- 1385.exit.expect 2025-03-02 00:02:06.222383397 +0000 +++ 1385.exit.result 2025-03-02 00:02:06.222383397 +0000 @@ -1 +1 @@ -0 +1 <STDERR> ble/function#pop: echo is not a function. </STDERR> lib/test-util.sh:1443: ble/util/sprintf ret "[%#.2g]" 27 --- 1401.ret.expect 2025-03-02 00:02:06.485382296 +0000 +++ 1401.ret.result 2025-03-02 00:02:06.485382296 +0000 @@ -1 +1 @@ -[27.] +[1b] <STDERR> [%#.2g] ^ [ printf arg at line 5263 of out/ble.osh ]:1 </STDERR> lib/test-util.sh:1444: ble/util/sprintf ret "[%#.2f]" 27 --- 1401.ret.expect 2025-03-02 00:02:06.520382150 +0000 +++ 1401.ret.result 2025-03-02 00:02:06.521382146 +0000 @@ -1 +1 @@ -[27.00] +[1b] <STDERR> [%#.2f] ^ [ printf arg at line 5263 of out/ble.osh ]:1 </STDERR> lib/test-util.sh:1482: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 00:02:06.743381217 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.744381213 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1484: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 00:02:06.777381074 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.7773810 elif [[ -t ${!1} ]]; then ^~ out/ble.osh:5825: fatal: Invalid file descriptor '' ble/function#push/0:ble/util/msleep ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:ble/util/msleep' not found (OILS-ERR-100) 74 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1485: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 00:02:06.810380936 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.810380936 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1487: ble/alias#expand aaa3 --- 1407.ret.expect 2025-03-02 00:02:06.844380794 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.844380794 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1488: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 00:02:06.877380656 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.878380652 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1489: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 00:02:06.911380514 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.912380510 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1491: ble/alias#expand aaa4 --- 1407.ret.expect 2025-03-02 00:02:06.946380367 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.947380363 +0000 @@ -1 +1 @@ -echo +aaa4 lib/test-util.sh:1492: ble/alias#expand aaa3 --- 1407.ret.expect 2025-03-02 00:02:06.980380225 +0000 +++ 1407.ret.result 2025-03-02 00:02:06.981380221 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1493: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 00:02:07.014380083 +0000 +++ 1407.ret.result 2025-03-02 00:02:07.015380079 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1494: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 00:02:07.047379945 +0000 +++ 1407.ret.result 2025-03-02 00:02:07.048379940 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1619: [[ ! ${v0+set} ]] --- 1481.exit.expect 2025-03-02 00:02:08.015375894 +0000 +++ 1481.exit.result 2025-03-02 00:02:08.016375890 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1620: status v1 --- 1481.stdout.expect 2025-03-02 00:02:08.050375747 +0000 +++ 1481.stdout.result 2025-03-02 00:02:08.051375743 +0000 @@ -1 +1 @@ -1:(123) +1:(2) lib/test-util.sh:1621: status v2 --- 1481.stdout.expect 2025-03-02 00:02:08.085375601 +0000 +++ 1481.stdout.result 2025-03-02 00:02:08.086375597 +0000 @@ -1 +1 @@ -3:(1 2 3) +1:(3) lib/test-util.sh:1622: status v3 --- 1481.stdout.expect 2025-03-02 00:02:08.120375454 +0000 +++ 1481.stdout.result 2025-03-02 00:02:08.121375450 +0000 @@ -1 +1 @@ -1:(bbb) +3:(bbb) lib/test-util.sh:1623: status v4 --- 1481.stdout.expect 2025-03-02 00:02:08.156375304 +0000 +++ 1481.stdout.result 2025-03-02 00:02:08.156375304 +0000 @@ -1 +1 @@ -1:(ccc) +1:(5) lib/test-util.sh:1635: ble/util/print-global-definitions value --- 1481.stdout.expect 2025-03-02 00:02:08.229374998 +0000 +++ 1481.stdout.result 2025-03-02 00:02:08.230374994 +0000 @@ -1 +1 @@ -declare value='hello '\''world'\''' +declare value; builtin unset -v value lib/test-util.sh:1672: shopt -q failglob --- 1498.exit.expect 2025-03-02 00:02:08.522373772 +0000 +++ 1498.exit.result 2025-03-02 00:02:08.522373772 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1673: shopt -q nullglob --- 1498.exit.expect 2025-03-02 00:02:08.554373638 +0000 +++ 1498.exit.result 2025-03-02 00:02:08.555373634 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1674: shopt -q extglob --- 1498.exit.expect 2025-03-02 00:02:08.588373496 +0000 +++ 1498.exit.result 2025-03-02 00:02:08.589373492 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1685: ble-measure -q "ble/util/msleep 100"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 1508.exit.expect 2025-03-02 00:02:08.854372380 +0000 +++ 1508.exit.result 2025-03-02 00:02:08.854372380 +0000 @@ -1 +1 @@ -0 +1 <STDERR> 0 usec </STDERR> lib/test-util.sh:1686: ble-measure -q "ble/util/sleep 0.1"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 1508.exit.expect 2025-03-02 00:02:09.014371713 +0000 +++ 1508.exit.result 2025-03-02 00:02:09.015371709 +0000 @@ -1 +1 @@ -0 +1 <STDERR> 0 usec </STDERR> lib/test-util.sh:1694: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 --- 1515.stdout.expect 2025-03-02 00:02:19.099331130 +0000 +++ 1515.stdout.result 2025-03-02 00:02:19.100331126 +0000 @@ -1,10 +1 @@ 100 -200 -300 -400 -500 -600 -700 -800 -900 -1000 <STDERR> [%1] PID 1517 Started [%1] PID 1517 Done [%1] PID 1531 Started [%2] PID 1533 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^~ lib/test-util.sh:1704: 'set' got invalid flag '-m' [%3] PID 1535 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^ lib/test-util.sh:1704: 'set' got invalid flag '-m' ble/function#push/0:ble/util/idle/IS_IDLE ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:ble/util/idle/IS_IDLE' not found (OILS-ERR-100) ble/function#push/0:ble/util/.test-utf8-locale ^~~ [ eval arg at line 334 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:334: 'ble/function#push/0:ble/util/.test-utf8-locale' not found (OILS-ERR-100) real 53.681 user 0.602 sys 0.129 real 0.605 user 0.089 sys 0.009 </STDERR> lib/test-util.sh:1696: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 progressive-weight --- 1515.stdout.expect 2025-03-02 00:02:29.163276258 +0000 +++ 1515.stdout.result 2025-03-02 00:02:29.164276252 +0000 @@ -1,16 +1 @@ 1 -3 -7 -15 -31 -63 -127 -227 -327 -427 -527 -627 -727 -827 -927 -1027 <STDERR> [%1] PID 1522 Started [%1] PID 1522 Done </STDERR> lib/test-util.sh:1698: ble/util/conditional-sync 'ble/bin/sleep 10' 'true' 100 timeout=10 --- 1515.exit.expect 2025-03-02 00:02:39.221224130 +0000 +++ 1515.exit.result 2025-03-02 00:02:39.221224130 +0000 @@ -1 +1 @@ -142 +0 <STDERR> [%1] PID 1527 Started [%1] PID 1527 Done </STDERR> lib/test-util.sh:1713: kill -0 "$pid1" --- 1515.exit.expect 2025-03-02 00:02:39.366223431 +0000 +++ 1515.exit.result 2025-03-02 00:02:39.367223426 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1714: kill -0 "$pid2" --- 1515.exit.expect 2025-03-02 00:02:39.407223233 +0000 +++ 1515.exit.result 2025-03-02 00:02:39.407223233 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1715: kill -0 "$pid3" --- 1515.exit.expect 2025-03-02 00:02:39.446223045 +0000 +++ 1515.exit.result 2025-03-02 00:02:39.447223040 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1740: ble/util/get-pager ret --- 1569.ret.expect 2025-03-02 00:02:39.710221768 +0000 +++ 1569.ret.result 2025-03-02 00:02:39.711221764 +0000 @@ -1 +1 @@ -less +pager lib/test-util.sh:1763: ble/util/buffer.flush --- 1574.stdout.expect 2025-03-02 00:02:39.795221358 +0000 +++ 1574.stdout.result 2025-03-02 00:02:39.795221358 +0000 @@ -1 +1 @@ -helloworld + lib/test-util.sh:1767: ble/util/buffer.flush --- 1574.stdout.expect 2025-03-02 00:02:39.843221126 +0000 +++ 1574.stdout.result 2025-03-02 00:02:39.843221126 +0000 @@ -1,2 +1 @@ -hello -world + lib/test-util.sh:2016: ble/util/c2s 956; [[ $ret != μ ]] --- 1587.exit.expect 2025-03-02 00:02:41.364213773 +0000 +++ 1587.exit.result 2025-03-02 00:02:41.364213773 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:2017: ble/util/c2s 12354; [[ $ret != あ ]] --- 1587.exit.expect 2025-03-02 00:02:41.399213604 +0000 +++ 1587.exit.result 2025-03-02 00:02:41.399213604 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:2047: ble/util/chars2s --- 1593.ret.expect 2025-03-02 00:02:41.699212153 +0000 +++ 1593.ret.result 2025-03-02 00:02:41.700212148 +0000 @@ -1 +1 @@ - +12354 <STDERR> \\U%08x ^ [ printf arg at line 11674 of out/ble.osh ]:1 </STDERR> lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-@c'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:42.747207087 +0000 +++ 1596.ret.result 2025-03-02 00:02:42.748207082 +0000 @@ -1 +1 @@ -98 0 99 +98 0 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-ac'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:42.852206580 +0000 +++ 1596.ret.result 2025-03-02 00:02:42.853206575 +0000 @@ -1 +1 @@ -98 1 99 +98 1 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-zc'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:42.957206072 +0000 +++ 1596.ret.result 2025-03-02 00:02:42.957206072 +0000 @@ -1 +1 @@ -98 26 99 +98 26 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-]c'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:43.060205574 +0000 +++ 1596.ret.result 2025-03-02 00:02:43.061205569 +0000 @@ -1 +1 @@ -98 29 99 +98 29 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-^c'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:43.165205066 +0000 +++ 1596.ret.result 2025-03-02 00:02:43.165205066 +0000 @@ -1 +1 @@ -98 30 99 +98 30 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-_c'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:43.270204559 +0000 +++ 1596.ret.result 2025-03-02 00:02:43.270204559 +0000 @@ -1 +1 @@ -98 31 99 +98 31 lib/test-util.sh:2064: ble/util/keyseq2chars 'b\M-\C-@c'; ret="${ret[*]}" --- 1596.ret.expect 2025-03-02 00:02:43.378204037 +0000 +++ 1596.ret.result 2025-03-02 00:02:43.378204037 +0000 @@ -1 +1 @@ -98 27 0 99 +98 27 0 91.3% [section] ble/util: 1129/1236 (107 fail, 0 crash, 8 skip) DONE Running lib/test-util.sh Running lib/test-decode.sh 100.0% [section] ble/decode: 33/33 (0 fail, 0 crash, 0 skip) DONE Running lib/test-decode.sh ~/oil DONE