~/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.004 user 7.706 sys 0.171 real 0.951 user 0.199 sys 0.021 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 05:57:25.639887861 +0000 +++ 1086.ret.result 2025-03-02 05:57:25.640887871 +0000 @@ -1 +1 @@ -0 +1 lib/test-main.sh:57: ! ble/bin#has ble_test_dummy_4 --- 1090.exit.expect 2025-03-02 05:57:25.853890053 +0000 +++ 1090.exit.result 2025-03-02 05:57:25.853890053 +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 05:57:25.975891303 +0000 +++ 1093.ret.result 2025-03-02 05:57:25.976891313 +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 05:57:26.179893393 +0000 +++ 1093.exit.result 2025-03-02 05:57:26.179893393 +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 05:57:26.265894274 +0000 +++ 1126.exit.result 2025-03-02 05:57:26.266894285 +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 05:57:27.672908716 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.673908727 +0000 @@ -1 +1 @@ -i + lib/test-util.sh:191: ble/variable#get-attr x; ret=$attr --- 1137.ret.expect 2025-03-02 05:57:27.705909055 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.706909066 +0000 @@ -1 +1 @@ -x + lib/test-util.sh:192: ble/variable#get-attr r; ret=$attr --- 1137.ret.expect 2025-03-02 05:57:27.738909395 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.739909405 +0000 @@ -1 +1 @@ -r + lib/test-util.sh:195: ble/variable#get-attr u; ret=$attr --- 1137.ret.expect 2025-03-02 05:57:27.782909847 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.783909857 +0000 @@ -1 +1 @@ -u + lib/test-util.sh:196: ble/variable#get-attr l; ret=$attr --- 1137.ret.expect 2025-03-02 05:57:27.815910186 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.816910196 +0000 @@ -1 +1 @@ -l + lib/test-util.sh:197: ble/variable#get-attr c; ret=$attr --- 1137.ret.expect 2025-03-02 05:57:27.848910525 +0000 +++ 1137.ret.result 2025-03-02 05:57:27.849910535 +0000 @@ -1 +1 @@ -c + lib/test-util.sh:203: ble/variable#has-attr i i --- 1137.exit.expect 2025-03-02 05:57:27.892910977 +0000 +++ 1137.exit.result 2025-03-02 05:57:27.892910977 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:204: ble/variable#has-attr x x --- 1137.exit.expect 2025-03-02 05:57:27.924911306 +0000 +++ 1137.exit.result 2025-03-02 05:57:27.925911316 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:205: ble/variable#has-attr r r --- 1137.exit.expect 2025-03-02 05:57:27.957911645 +0000 +++ 1137.exit.result 2025-03-02 05:57:27.957911645 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:212: ble/variable#has-attr u u --- 1137.exit.expect 2025-03-02 05:57:28.045912549 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.045912549 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:213: ble/variable#has-attr l l --- 1137.exit.expect 2025-03-02 05:57:28.077912878 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.078912888 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:214: ble/variable#has-attr c c --- 1137.exit.expect 2025-03-02 05:57:28.110913217 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.110913217 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:226: ble/is-inttype i --- 1137.exit.expect 2025-03-02 05:57:28.199914131 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.200914142 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:228: ble/is-readonly r --- 1137.exit.expect 2025-03-02 05:57:28.244914594 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.245914604 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:231: ble/is-transformed u --- 1137.exit.expect 2025-03-02 05:57:28.288915046 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.289915056 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:232: ble/is-transformed l --- 1137.exit.expect 2025-03-02 05:57:28.321915385 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.321915385 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:233: ble/is-transformed c --- 1137.exit.expect 2025-03-02 05:57:28.354915724 +0000 +++ 1137.exit.result 2025-03-02 05:57:28.355915734 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:251: is-global v0 --- 1172.exit.expect 2025-03-02 05:57:28.417916371 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.418916382 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:252: is-global v1 --- 1172.exit.expect 2025-03-02 05:57:28.456916772 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.456916772 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:257: ble/variable#is-global v0 --- 1172.exit.expect 2025-03-02 05:57:28.546917697 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.547917707 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:258: ble/variable#is-global v1 --- 1172.exit.expect 2025-03-02 05:57:28.585918098 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.585918098 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:263: ble/variable#is-global v0u --- 1172.exit.expect 2025-03-02 05:57:28.678919053 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.678919053 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:265: ble/variable#is-global v1u --- 1172.exit.expect 2025-03-02 05:57:28.716919444 +0000 +++ 1172.exit.result 2025-03-02 05:57:28.717919454 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:597: ble/string#split-lines a "" ; status --- 1220.stdout.expect 2025-03-02 05:57:30.819941052 +0000 +++ 1220.stdout.result 2025-03-02 05:57:30.820941063 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:599: ble/string#split-lines a " " ; status --- 1220.stdout.expect 2025-03-02 05:57:30.866941535 +0000 +++ 1220.stdout.result 2025-03-02 05:57:30.867941546 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:600: ble/string#split-lines a "1 " ; status --- 1220.stdout.expect 2025-03-02 05:57:30.900941885 +0000 +++ 1220.stdout.result 2025-03-02 05:57:30.900941885 +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 05:57:30.933942224 +0000 +++ 1220.stdout.result 2025-03-02 05:57:30.934942234 +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 05:57:30.967942573 +0000 +++ 1220.stdout.result 2025-03-02 05:57:30.967942573 +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 05:57:32.709960473 +0000 +++ 1238.ret.result 2025-03-02 05:57:32.710960483 +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 05:57:32.755960945 +0000 +++ 1238.ret.result 2025-03-02 05:57:32.755960945 +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 05:57:32.800961408 +0000 +++ 1238.ret.result 2025-03-02 05:57:32.801961418 +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 05:57:32.859962014 +0000 +++ 1238.stdout.result 2025-03-02 05:57:32.859962014 +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 05:57:32.905962487 +0000 +++ 1238.stdout.result 2025-03-02 05:57:32.905962487 +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 05:57:32.951962959 +0000 +++ 1238.stdout.result 2025-03-02 05:57:32.951962959 +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 05:57:33.615969782 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.616969792 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:844: ble/util/strlen αβγ --- 1253.ret.expect 2025-03-02 05:57:33.648970121 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.649970131 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:845: ble/util/strlen あ --- 1253.ret.expect 2025-03-02 05:57:33.681970460 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.682970470 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:846: ble/util/strlen あいう --- 1253.ret.expect 2025-03-02 05:57:33.714970799 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.715970809 +0000 @@ -1 +1 @@ -9 +3 lib/test-util.sh:847: ble/util/strlen aα --- 1253.ret.expect 2025-03-02 05:57:33.747971138 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.748971149 +0000 @@ -1 +1 @@ -3 +2 lib/test-util.sh:848: ble/util/strlen aαあ --- 1253.ret.expect 2025-03-02 05:57:33.780971477 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.781971488 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:852: ble/util/strlen α --- 1253.ret.expect 2025-03-02 05:57:33.825971940 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.825971940 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:853: ble/util/strlen あ --- 1253.ret.expect 2025-03-02 05:57:33.857972269 +0000 +++ 1253.ret.result 2025-03-02 05:57:33.858972279 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:885: ble/util/substr あいう 0 3 --- 1270.ret.expect 2025-03-02 05:57:34.207975865 +0000 +++ 1270.ret.result 2025-03-02 05:57:34.207975865 +0000 @@ -1 +1 @@ -あ +あいう lib/test-util.sh:886: ble/util/substr あいう 3 6 --- 1270.ret.expect 2025-03-02 05:57:34.241976214 +0000 +++ 1270.ret.result 2025-03-02 05:57:34.242976225 +0000 @@ -1 +1 @@ -いう + lib/test-util.sh:1243: ble/util/mapfile a < <(echo); status --- 1280.stdout.expect 2025-03-02 05:57:38.849023522 +0000 +++ 1280.stdout.result 2025-03-02 05:57:38.850023533 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1244: ble/util/mapfile a < <(echo;echo); status --- 1280.stdout.expect 2025-03-02 05:57:38.886023902 +0000 +++ 1280.stdout.result 2025-03-02 05:57:38.886023902 +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 05:57:38.923024282 +0000 +++ 1280.stdout.result 2025-03-02 05:57:38.924024293 +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 05:57:39.062025710 +0000 +++ 1280.stdout.result 2025-03-02 05:57:39.062025710 +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 05:57:39.130026408 +0000 +++ 1280.stdout.result 2025-03-02 05:57:39.130026408 +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 05:57:39.165026767 +0000 +++ 1280.stdout.result 2025-03-02 05:57:39.166026777 +0000 @@ -1 +1 @@ -3:(1 2) +1:(1) lib/test-util.sh:1364: f1 --- 1364.stdout.expect 2025-03-02 05:57:40.180037189 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.181037199 +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 05:57:40.253037938 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.254037949 +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 05:57:40.325038678 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.326038688 +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 05:57:40.396039407 +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 05:57:40.397039417 +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 05:57:40.469040157 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.470040167 +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 05:57:40.543040916 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.543040916 +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 05:57:40.595041450 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.595041450 +0000 @@ -1 +1 @@ -original + --- 1364.exit.expect 2025-03-02 05:57:40.614041645 +0000 +++ 1364.exit.result 2025-03-02 05:57:40.615041655 +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 05:57:40.660042118 +0000 +++ 1364.stdout.result 2025-03-02 05:57:40.661042128 +0000 @@ -1 +1 @@ -original 1 + --- 1364.exit.expect 2025-03-02 05:57:40.680042323 +0000 +++ 1364.exit.result 2025-03-02 05:57:40.680042323 +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 05:57:40.806043617 +0000 +++ 1385.stdout.result 2025-03-02 05:57:40.807043627 +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 05:57:40.853044099 +0000 +++ 1385.stdout.result 2025-03-02 05:57:40.853044099 +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 05:57:40.899044572 +0000 +++ 1385.stdout.result 2025-03-02 05:57:40.900044582 +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 05:57:40.935044941 +0000 +++ 1385.stdout.result 2025-03-02 05:57:40.935044941 +0000 @@ -1 +1 @@ -(1 2 3) +1 2 3 lib/test-util.sh:1404: echo 1 2 3 --- 1385.stdout.expect 2025-03-02 05:57:40.970045301 +0000 +++ 1385.stdout.result 2025-03-02 05:57:40.970045301 +0000 @@ -1 +1 @@ -[1 2 3] +1 2 3 lib/test-util.sh:1405: ble/is-function echo --- 1385.exit.expect 2025-03-02 05:57:41.002045629 +0000 +++ 1385.exit.result 2025-03-02 05:57:41.003045640 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1406: ble/function#pop echo --- 1385.exit.expect 2025-03-02 05:57:41.037045989 +0000 +++ 1385.exit.result 2025-03-02 05:57:41.038045999 +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 05:57:41.301048699 +0000 +++ 1401.ret.result 2025-03-02 05:57:41.301048699 +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 05:57:41.336049059 +0000 +++ 1401.ret.result 2025-03-02 05:57:41.336049059 +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 05:57:41.555051307 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.556051318 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1484: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 05:57:41.589051657 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.5890516 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) 57 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1485: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 05:57:41.622051995 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.622051995 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1487: ble/alias#expand aaa3 --- 1407.ret.expect 2025-03-02 05:57:41.655052334 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.655052334 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1488: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 05:57:41.690052693 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.690052693 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1489: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 05:57:41.723053032 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.723053032 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1491: ble/alias#expand aaa4 --- 1407.ret.expect 2025-03-02 05:57:41.756053371 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.756053371 +0000 @@ -1 +1 @@ -echo +aaa4 lib/test-util.sh:1492: ble/alias#expand aaa3 --- 1407.ret.expect 2025-03-02 05:57:41.788053700 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.789053710 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1493: ble/alias#expand aaa2 --- 1407.ret.expect 2025-03-02 05:57:41.821054039 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.822054049 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1494: ble/alias#expand aaa1 --- 1407.ret.expect 2025-03-02 05:57:41.854054377 +0000 +++ 1407.ret.result 2025-03-02 05:57:41.855054388 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1619: [[ ! ${v0+set} ]] --- 1481.exit.expect 2025-03-02 05:57:42.811064204 +0000 +++ 1481.exit.result 2025-03-02 05:57:42.812064214 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1620: status v1 --- 1481.stdout.expect 2025-03-02 05:57:42.846064562 +0000 +++ 1481.stdout.result 2025-03-02 05:57:42.847064573 +0000 @@ -1 +1 @@ -1:(123) +1:(2) lib/test-util.sh:1621: status v2 --- 1481.stdout.expect 2025-03-02 05:57:42.880064911 +0000 +++ 1481.stdout.result 2025-03-02 05:57:42.880064911 +0000 @@ -1 +1 @@ -3:(1 2 3) +1:(3) lib/test-util.sh:1622: status v3 --- 1481.stdout.expect 2025-03-02 05:57:42.914065260 +0000 +++ 1481.stdout.result 2025-03-02 05:57:42.914065260 +0000 @@ -1 +1 @@ -1:(bbb) +3:(bbb) lib/test-util.sh:1623: status v4 --- 1481.stdout.expect 2025-03-02 05:57:42.948065608 +0000 +++ 1481.stdout.result 2025-03-02 05:57:42.948065608 +0000 @@ -1 +1 @@ -1:(ccc) +1:(5) lib/test-util.sh:1635: ble/util/print-global-definitions value --- 1481.stdout.expect 2025-03-02 05:57:43.019066336 +0000 +++ 1481.stdout.result 2025-03-02 05:57:43.019066336 +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 05:57:43.309069310 +0000 +++ 1498.exit.result 2025-03-02 05:57:43.309069310 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1673: shopt -q nullglob --- 1498.exit.expect 2025-03-02 05:57:43.341069638 +0000 +++ 1498.exit.result 2025-03-02 05:57:43.342069648 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1674: shopt -q extglob --- 1498.exit.expect 2025-03-02 05:57:43.373069966 +0000 +++ 1498.exit.result 2025-03-02 05:57:43.374069976 +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 05:57:43.633072631 +0000 +++ 1508.exit.result 2025-03-02 05:57:43.634072641 +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 05:57:43.789074229 +0000 +++ 1508.exit.result 2025-03-02 05:57:43.790074239 +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 05:57:53.872177574 +0000 +++ 1515.stdout.result 2025-03-02 05:57:53.872177574 +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.242 user 0.585 sys 0.131 real 0.595 user 0.092 sys 0.005 </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 05:58:03.934278760 +0000 +++ 1515.stdout.result 2025-03-02 05:58:03.934278760 +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 05:58:13.989380416 +0000 +++ 1515.exit.result 2025-03-02 05:58:13.990380427 +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 05:58:14.131381865 +0000 +++ 1515.exit.result 2025-03-02 05:58:14.132381875 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1714: kill -0 "$pid2" --- 1515.exit.expect 2025-03-02 05:58:14.168382243 +0000 +++ 1515.exit.result 2025-03-02 05:58:14.169382253 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1715: kill -0 "$pid3" --- 1515.exit.expect 2025-03-02 05:58:14.207382641 +0000 +++ 1515.exit.result 2025-03-02 05:58:14.207382641 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1740: ble/util/get-pager ret --- 1569.ret.expect 2025-03-02 05:58:14.463385253 +0000 +++ 1569.ret.result 2025-03-02 05:58:14.463385253 +0000 @@ -1 +1 @@ -less +pager lib/test-util.sh:1763: ble/util/buffer.flush --- 1574.stdout.expect 2025-03-02 05:58:14.545386089 +0000 +++ 1574.stdout.result 2025-03-02 05:58:14.546386100 +0000 @@ -1 +1 @@ -helloworld + lib/test-util.sh:1767: ble/util/buffer.flush --- 1574.stdout.expect 2025-03-02 05:58:14.592386569 +0000 +++ 1574.stdout.result 2025-03-02 05:58:14.593386579 +0000 @@ -1,2 +1 @@ -hello -world + lib/test-util.sh:2016: ble/util/c2s 956; [[ $ret != μ ]] --- 1587.exit.expect 2025-03-02 05:58:16.097397137 +0000 +++ 1587.exit.result 2025-03-02 05:58:16.098397143 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:2017: ble/util/c2s 12354; [[ $ret != あ ]] --- 1587.exit.expect 2025-03-02 05:58:16.131397355 +0000 +++ 1587.exit.result 2025-03-02 05:58:16.132397362 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:2047: ble/util/chars2s --- 1593.ret.expect 2025-03-02 05:58:16.428399268 +0000 +++ 1593.ret.result 2025-03-02 05:58:16.428399268 +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 05:58:17.454405874 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.454405874 +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 05:58:17.555406525 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.555406525 +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 05:58:17.656407175 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.656407175 +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 05:58:17.757407826 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.757407826 +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 05:58:17.858408476 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.859408482 +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 05:58:17.959409126 +0000 +++ 1596.ret.result 2025-03-02 05:58:17.959409126 +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 05:58:18.062409789 +0000 +++ 1596.ret.result 2025-03-02 05:58:18.062409789 +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