~/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:2813: '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 9.598
user 9.252
sys 0.214
real 1.117
user 0.237
sys 0.022
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
--- 1113.ret.expect 2025-06-25 15:04:11.696460077 +0000
+++ 1113.ret.result 2025-06-25 15:04:11.697460086 +0000
@@ -1 +1 @@
-0
+1
lib/test-main.sh:57: ! ble/bin#has ble_test_dummy_4
--- 1117.exit.expect 2025-06-25 15:04:11.948462295 +0000
+++ 1117.exit.result 2025-06-25 15:04:11.948462295 +0000
@@ -1 +1 @@
-0
+1
lib/test-main.sh:88:
ble/util/readlink f.txt
[[ $ret != /* ]] && ret=${PWD%/}/$ret
--- 1120.ret.expect 2025-06-25 15:04:12.099463624 +0000
+++ 1120.ret.result 2025-06-25 15:04:12.100463632 +0000
@@ -1 +1 @@
-/tmp/blesh/1000/1026.test/1120.d/ab/cd/ef/file.txt
+/tmp/blesh/1000/1026.test/1120.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" ]]
--- 1120.exit.expect 2025-06-25 15:04:12.333465683 +0000
+++ 1120.exit.result 2025-06-25 15:04:12.334465692 +0000
@@ -1 +1 @@
-0
+1
declare -- path=/tmp/blesh/1000/1026.test/1120.d/1.txt
declare -x PWD=/tmp/blesh/1000/1026.test/1120.d
lib/test-main.sh:131: [[ ${value//$pattern/$'\n'} == $'\n'hello$'\n' ]]
--- 1153.exit.expect 2025-06-25 15:04:12.433466563 +0000
+++ 1153.exit.result 2025-06-25 15:04:12.433466563 +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
--- 1164.ret.expect 2025-06-25 15:04:14.085481069 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.085481069 +0000
@@ -1 +1 @@
-i
+
lib/test-util.sh:191: ble/variable#get-attr x; ret=$attr
--- 1164.ret.expect 2025-06-25 15:04:14.122481385 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.122481385 +0000
@@ -1 +1 @@
-x
+
lib/test-util.sh:192: ble/variable#get-attr r; ret=$attr
--- 1164.ret.expect 2025-06-25 15:04:14.159481700 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.159481700 +0000
@@ -1 +1 @@
-r
+
lib/test-util.sh:195: ble/variable#get-attr u; ret=$attr
--- 1164.ret.expect 2025-06-25 15:04:14.210482135 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.210482135 +0000
@@ -1 +1 @@
-u
+
lib/test-util.sh:196: ble/variable#get-attr l; ret=$attr
--- 1164.ret.expect 2025-06-25 15:04:14.248482459 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.249482468 +0000
@@ -1 +1 @@
-l
+
lib/test-util.sh:197: ble/variable#get-attr c; ret=$attr
--- 1164.ret.expect 2025-06-25 15:04:14.287482792 +0000
+++ 1164.ret.result 2025-06-25 15:04:14.287482792 +0000
@@ -1 +1 @@
-c
+
lib/test-util.sh:203: ble/variable#has-attr i i
--- 1164.exit.expect 2025-06-25 15:04:14.337483218 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.338483227 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:204: ble/variable#has-attr x x
--- 1164.exit.expect 2025-06-25 15:04:14.374483534 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.374483534 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:205: ble/variable#has-attr r r
--- 1164.exit.expect 2025-06-25 15:04:14.410483841 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.410483841 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:212: ble/variable#has-attr u u
--- 1164.exit.expect 2025-06-25 15:04:14.516484745 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.517484753 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:213: ble/variable#has-attr l l
--- 1164.exit.expect 2025-06-25 15:04:14.557485094 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.558485103 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:214: ble/variable#has-attr c c
--- 1164.exit.expect 2025-06-25 15:04:14.596485427 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.597485435 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:226: ble/is-inttype i
--- 1164.exit.expect 2025-06-25 15:04:14.700486314 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.700486314 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:228: ble/is-readonly r
--- 1164.exit.expect 2025-06-25 15:04:14.751486749 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.752486757 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:231: ble/is-transformed u
--- 1164.exit.expect 2025-06-25 15:04:14.803487192 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.804487201 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:232: ble/is-transformed l
--- 1164.exit.expect 2025-06-25 15:04:14.841487516 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.842487525 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:233: ble/is-transformed c
--- 1164.exit.expect 2025-06-25 15:04:14.879487840 +0000
+++ 1164.exit.result 2025-06-25 15:04:14.880487849 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:251: is-global v0
--- 1199.exit.expect 2025-06-25 15:04:14.956488497 +0000
+++ 1199.exit.result 2025-06-25 15:04:14.957488505 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:252: is-global v1
--- 1199.exit.expect 2025-06-25 15:04:15.005488915 +0000
+++ 1199.exit.result 2025-06-25 15:04:15.006488923 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:257: ble/variable#is-global v0
--- 1199.exit.expect 2025-06-25 15:04:15.106489776 +0000
+++ 1199.exit.result 2025-06-25 15:04:15.106489776 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:258: ble/variable#is-global v1
--- 1199.exit.expect 2025-06-25 15:04:15.148490134 +0000
+++ 1199.exit.result 2025-06-25 15:04:15.149490143 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:263: ble/variable#is-global v0u
--- 1199.exit.expect 2025-06-25 15:04:15.255491047 +0000
+++ 1199.exit.result 2025-06-25 15:04:15.256491055 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:265: ble/variable#is-global v1u
--- 1199.exit.expect 2025-06-25 15:04:15.298491413 +0000
+++ 1199.exit.result 2025-06-25 15:04:15.299491422 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:782: ble/string#quote-command echo hello world
--- 1255.ret.expect 2025-06-25 15:04:19.831530070 +0000
+++ 1255.ret.result 2025-06-25 15:04:19.831530070 +0000
@@ -1 +1 @@
-echo 'hello' 'world'
+echo hello world
lib/test-util.sh:784: ble/string#quote-command echo "'test'"
--- 1255.ret.expect 2025-06-25 15:04:19.887530548 +0000
+++ 1255.ret.result 2025-06-25 15:04:19.887530548 +0000
@@ -1 +1 @@
-echo ''\''test'\'''
+echo $'\'test\''
lib/test-util.sh:786: ble/string#quote-command echo a{1..4}
--- 1255.ret.expect 2025-06-25 15:04:19.941531009 +0000
+++ 1255.ret.result 2025-06-25 15:04:19.942531017 +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
--- 1255.stdout.expect 2025-06-25 15:04:20.013531622 +0000
+++ 1255.stdout.result 2025-06-25 15:04:20.014531631 +0000
@@ -1 +1 @@
-echo 'hello' 'world'
+echo hello world
lib/test-util.sh:792: ble/util/print-quoted-command echo "'test'"
--- 1255.stdout.expect 2025-06-25 15:04:20.070532109 +0000
+++ 1255.stdout.result 2025-06-25 15:04:20.070532109 +0000
@@ -1 +1 @@
-echo ''\''test'\'''
+echo $'\'test\''
lib/test-util.sh:794: ble/util/print-quoted-command echo a{1..4}
--- 1255.stdout.expect 2025-06-25 15:04:20.126532586 +0000
+++ 1255.stdout.result 2025-06-25 15:04:20.127532595 +0000
@@ -1 +1 @@
-echo 'a1' 'a2' 'a3' 'a4'
+echo a1 a2 a3 a4
lib/test-util.sh:843: ble/util/strlen α
--- 1270.ret.expect 2025-06-25 15:04:20.892539119 +0000
+++ 1270.ret.result 2025-06-25 15:04:20.893539127 +0000
@@ -1 +1 @@
-2
+1
lib/test-util.sh:844: ble/util/strlen αβγ
--- 1270.ret.expect 2025-06-25 15:04:20.930539443 +0000
+++ 1270.ret.result 2025-06-25 15:04:20.930539443 +0000
@@ -1 +1 @@
-6
+3
lib/test-util.sh:845: ble/util/strlen あ
--- 1270.ret.expect 2025-06-25 15:04:20.967539758 +0000
+++ 1270.ret.result 2025-06-25 15:04:20.968539767 +0000
@@ -1 +1 @@
-3
+1
lib/test-util.sh:846: ble/util/strlen あいう
--- 1270.ret.expect 2025-06-25 15:04:21.005540082 +0000
+++ 1270.ret.result 2025-06-25 15:04:21.006540091 +0000
@@ -1 +1 @@
-9
+3
lib/test-util.sh:847: ble/util/strlen aα
--- 1270.ret.expect 2025-06-25 15:04:21.045540423 +0000
+++ 1270.ret.result 2025-06-25 15:04:21.045540423 +0000
@@ -1 +1 @@
-3
+2
lib/test-util.sh:848: ble/util/strlen aαあ
--- 1270.ret.expect 2025-06-25 15:04:21.083540747 +0000
+++ 1270.ret.result 2025-06-25 15:04:21.083540747 +0000
@@ -1 +1 @@
-6
+3
lib/test-util.sh:852: ble/util/strlen α
--- 127 ble/function#advice/original:function f1 { ble/util/print "original${*:+ $*}"; }
^
[ eval arg at line 332 of out/ble.osh ]:1
builtin eval -- "$1"; local ext=$?
^~~~
out/ble.osh:332: Unexpected right brace
0.ret.expect 2025-06-25 15:04:21.136541199 +0000
+++ 1270.ret.result 2025-06-25 15:04:21.137541208 +0000
@@ -1 +1 @@
-2
+1
lib/test-util.sh:853: ble/util/strlen あ
--- 1270.ret.expect 2025-06-25 15:04:21.174541523 +0000
+++ 1270.ret.result 2025-06-25 15:04:21.175541532 +0000
@@ -1 +1 @@
-3
+1
lib/test-util.sh:885: ble/util/substr あいう 0 3
--- 1287.ret.expect 2025-06-25 15:04:21.574544935 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.575544943 +0000
@@ -1 +1 @@
-あ
+あいう
lib/test-util.sh:886: ble/util/substr あいう 3 6
--- 1287.ret.expect 2025-06-25 15:04:21.613545267 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.613545267 +0000
@@ -1 +1 @@
-いう
+
lib/test-util.sh:887: ble/util/substr あいう 0 1
--- 1287.ret.expect 2025-06-25 15:04:21.651545591 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.652545600 +0000
@@ -1 +1 @@
-
+あ
lib/test-util.sh:888: ble/util/substr あいう 1 2
--- 1287.ret.expect 2025-06-25 15:04:21.691545932 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.691545932 +0000
@@ -1 +1 @@
-
+いう
lib/test-util.sh:889: ble/util/substr あいう 1 4
--- 1287.ret.expect 2025-06-25 15:04:21.729546256 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.729546256 +0000
@@ -1 +1 @@
-
+いう
lib/test-util.sh:890: ble/util/substr あいう 7 5
--- 1287.ret.expect 2025-06-25 15:04:21.768546589 +0000
+++ 1287.ret.result 2025-06-25 15:04:21.768546589 +0000
@@ -1 +1 @@
-
+
lib/test-util.sh:1364: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.387609928 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.388609938 +0000
@@ -1,2 +1 @@
pre
-original
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1366: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.454610572 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.455610581 +0000
@@ -1,3 +1,2 @@
pre
-original
post
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1368: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.521611215 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.521611215 +0000
@@ -1,3 +1,2 @@
A
-original
post
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1370: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.587611849 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.588611859 +0000
@@ -1,3 +1,2 @@
A
-original
B
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1372: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.657612521 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.658612531 +0000
@@ -1,5 +1,4 @@
A
[
-original
]
B
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1378: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.728613203 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.729613213 +0000
@@ -1,5 +1,4 @@
A
[
-original quick
]
B
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1381: f1
--- 1377.stdout.expect 2025-06-25 15:04:28.797613824 +0000
+++ 1377.stdout.result 2025-06-25 15:04:28.798613833 +0000
@@ -1 +1 @@
-original
+
--- 1377.exit.expect 2025-06-25 15:04:28.819614014 +0000
+++ 1377.exit.result 2025-06-25 15:04:28.820614023 +0000
@@ -1 +1 @@
-0
+127
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1382: f1 1
--- 1377.stdout.expect 2025-06-25 15:04:28.872614472 +0000
+++ 1377.stdout.result 2025-06-25 ble/function#pop: echo is not a function.
ble/function#pop: echo is not a function.
15:04:28.872614472 +0000
@@ -1 +1 @@
-original 1
+
--- 1377.exit.expect 2025-06-25 15:04:28.893614654 +0000
+++ 1377.exit.result 2025-06-25 15:04:28.894614662 +0000
@@ -1 +1 @@
-0
+127
ble/function#advice/original:"${ADVICE_WORDS[@]}"
^~~
out/ble.osh:5026: Command 'ble/function#advice/original:f1' not found (OILS-ERR-100)
lib/test-util.sh:1395: echo 1 2 3
--- 1398.stdout.expect 2025-06-25 15:04:29.031615846 +0000
+++ 1398.stdout.result 2025-06-25 15:04:29.032615855 +0000
@@ -1,3 +1,3 @@
A
-(1 2 3)
+1 2 3
Z
lib/test-util.sh:1397: echo 1 2 3
--- 1398.stdout.expect 2025-06-25 15:04:29.081616278 +0000
+++ 1398.stdout.result 2025-06-25 15:04:29.082616287 +0000
@@ -1,5 +1,3 @@
[
-A
-(1 2 3)
-Z
+1 2 3
]
lib/test-util.sh:1400: echo 1 2 3
--- 1398.stdout.expect 2025-06-25 15:04:29.133616727 +0000
+++ 1398.stdout.result 2025-06-25 15:04:29.134616736 +0000
@@ -1,3 +1 @@
-A
-(1 2 3)
-Z
+1 2 3
lib/test-util.sh:1402: echo 1 2 3
--- 1398.stdout.expect 2025-06-25 15:04:29.173617073 +0000
+++ 1398.stdout.result 2025-06-25 15:04:29.174617082 +0000
@@ -1 +1 @@
-(1 2 3)
+1 2 3
lib/test-util.sh:1404: echo 1 2 3
--- 1398.stdout.expect 2025-06-25 15:04:29.212617410 +0000
+++ 1398.stdout.result 2025-06-25 15:04:29.213617419 +0000
@@ -1 +1 @@
-[1 2 3]
+1 2 3
lib/test-util.sh:1405: ble/is-function echo
--- 1398.exit.expect 2025-06-25 15:04:29.248617721 +0000
+++ 1398.exit.result 2025-06-25 15:04:29.249617730 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:1406: ble/function#pop echo
--- 1398.exit.expect 2025-06-25 15:04:29.286618049 +0000
+++ 1398.exit.result 2025-06-25 15:04:29.287618058 +0000
@@ -1 +1 @@
-0
+1
ble/function#pop: echo is not a function.
lib/test-util.sh:1443: ble/util/sprintf ret "[%#.2g]" 27
--- 1414.ret.expect 2025-06-25 15:04:29.593620702 +0000
+++ 1414.ret.result 2025-06-25 15:04:29.594620711 +0000
@@ -1 +1 @@
-[27.]
+[1b]
[%#.2g]
^
[ printf arg at line 5261 of out/ble.osh ]:1
builtin printf -v "$@"
^
out/ble.osh:5261: osh printf doesn't support the '#' flag
lib/test-util.sh:1444: ble/util/sprintf ret "[%#.2f]" 27
--- 1414.ret.expect 2025-06-25 15:04:29.633621048 +0000
+++ 1414.ret.result 2025-06-25 15:04:29.634621057 +0000
@@ -1 +1 @@
-[27.00]
+[1b]
[%#.2f]
^
[ printf arg at line 5261 of out/ble.osh ]:1
builtin printf -v "$@"
^
out/ble.osh:5261: osh printf doesn't support the '#' flag
lib/test-util.sh:1482: ble/alias#expand aaa1
--- 1420.ret.expect 2025-06-25 15:04:29.885623226 +0000
+++ 1420.ret.result 2025-06-25 15:04:29.886623234 +0000
@@ -1 +1 @@
-aaa2 world
+aaa1
lib/test-util.sh:1484: ble/alias#expand aaa2
--- 1420.ret.expect 2025-06-25 15:04:29.923623554 +0000
+++ 1420.ret.result 2025-06-25 15:04:29.923623554 +0000
@@ -1 +1 @@
-aaa3 hello
+aaa2
lib/test-util.sh:1485: ble/alias#expand aaa1
--- 1420.ret.expect 2025-06-25 15:04:29.960623874 +0000
+++ 1420.ret.result 2025-06-25 15:04:29.960623874 +0000
@@ -1 +1 @@
-aaa2 world
+aaa1
lib/test-util.sh:1487: ble/alias#expand aaa3
--- 1420.ret.expect 2025-06-25 15:04:29.998624203 +0000
+++ 1420.ret.result 2025-06-25 15:04:29.999624212 +0000
@@ -1 +1 @@
-aaa4
+aaa3
lib/test-util.sh:1488: ble/alias#expand aaa2
--- 1420.ret.expect 2025-06-25 15:04:30.038624552 +0000
+++ 1420.ret.result 2025-06-25 15:04:30.039624560 +0000
@@ -1 +1 @@
-aaa3 hello
+aaa2
lib/test-util.sh:1489: ble/alias#expand aaa1
--- 1420.ret.expect 2025-06-25 15:04:30.078624900 +0000
+++ 1420.ret.result 2025-06-25 15:04:30.079624909 +0000
@@ -1 +1 @@
-aaa2 world
+aaa1
lib/test-util.sh:1491: ble/alias#expand aaa4
--- 1420.ret.expect 2025-06-25 15:04:30.119625258 +0000
+++ 1420.ret.result 2025-06-25 15:04:30.120625266 +0000
@@ -1 +1 @@
-echo
+aaa4
lib/test-util.sh:1492: ble/alias#expand aaa3
--- 1420.ret.expect 2025-06-25 15:04:30.160625615 +0000
+++ 1420.ret.result 2025-06-25 15:04:30.161625624 +0000
@@ -1 +1 @@
-aaa4
+aaa3
lib/test-util.sh:1493: ble/alias#expand aaa2
--- 1420.ret.expect 2025-06-25 15:04:30.201625972 +0000
+++ 1420.ret.result 20 elif [[ -t ${!1} ]]; then
^~
out/ble.osh:5823: fatal: Invalid file descriptor ''
[%1] PID 1544 Started
[%2] PID 1546 Started
set -m; ble/bin/sleep 10 & pid3=$!; set +m
^~
lib/test-util.sh:1704: 'set' got invalid flag '-m'
[%3] PID 1548 Started
set -m; ble/bin/sleep 10 & pid3=$!; set +m
^
lib/test-util.sh:1704: 'set' got invalid flag '-m'
25-06-25 15:04:30.202625981 +0000
@@ -1 +1 @@
-aaa3 hello
+aaa2
lib/test-util.sh:1494: ble/alias#expand aaa1
--- 1420.ret.expect 2025-06-25 15:04:30.240626312 +0000
+++ 1420.ret.result 2025-06-25 15:04:30.241626321 +0000
@@ -1 +1 @@
-aaa2 world
+aaa1
lib/test-util.sh:1619: [[ ! ${v0+set} ]]
--- 1494.exit.expect 2025-06-25 15:04:31.356636039 +0000
+++ 1494.exit.result 2025-06-25 15:04:31.357636048 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:1620: status v1
--- 1494.stdout.expect 2025-06-25 15:04:31.398636406 +0000
+++ 1494.stdout.result 2025-06-25 15:04:31.399636414 +0000
@@ -1 +1 @@
-1:(123)
+1:(2)
lib/test-util.sh:1621: status v2
--- 1494.stdout.expect 2025-06-25 15:04:31.452636876 +0000
+++ 1494.stdout.result 2025-06-25 15:04:31.453636885 +0000
@@ -1 +1 @@
-3:(1 2 3)
+1:(3)
lib/test-util.sh:1622: status v3
--- 1494.stdout.expect 2025-06-25 15:04:31.490637207 +0000
+++ 1494.stdout.result 2025-06-25 15:04:31.491637216 +0000
@@ -1 +1 @@
-1:(bbb)
+3:(bbb)
lib/test-util.sh:1623: status v4
--- 1494.stdout.expect 2025-06-25 15:04:31.528637539 +0000
+++ 1494.stdout.result 2025-06-25 15:04:31.528637539 +0000
@@ -1 +1 @@
-1:(ccc)
+1:(5)
lib/test-util.sh:1635: ble/util/print-global-definitions value
--- 1494.stdout.expect 2025-06-25 15:04:31.607638227 +0000
+++ 1494.stdout.result 2025-06-25 15:04:31.607638227 +0000
@@ -1 +1 @@
-declare value='hello '\''world'\'''
+declare value; builtin unset -v value
lib/test-util.sh:1672: shopt -q failglob
--- 1511.exit.expect 2025-06-25 15:04:31.936641095 +0000
+++ 1511.exit.result 2025-06-25 15:04:31.937641104 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:1673: shopt -q nullglob
--- 1511.exit.expect 2025-06-25 15:04:31.972641409 +0000
+++ 1511.exit.result 2025-06-25 15:04:31.973641417 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:1674: shopt -q extglob
--- 1511.exit.expect 2025-06-25 15:04:32.009641731 +0000
+++ 1511.exit.result 2025-06-25 15:04:32.009641731 +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))
--- 1521.exit.expect 2025-06-25 15:04:32.293644208 +0000
+++ 1521.exit.result 2025-06-25 15:04:32.293644208 +0000
@@ -1 +1 @@
-0
+1
0 usec
lib/test-util.sh:1686: ble-measure -q "ble/util/sleep 0.1"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120))
--- 1521.exit.expect 2025-06-25 15:04:32.455645619 +0000
+++ 1521.exit.result 2025-06-25 15:04:32.456645628 +0000
@@ -1 +1 @@
-0
+1
0 usec
lib/test-util.sh:1694: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100
--- 1528.stdout.expect 2025-06-25 15:04:42.540733313 +0000
+++ 1528.stdout.result 2025-06-25 15:04:42.541733322 +0000
@@ -1,10 +1 @@
100
-200
-300
-400
-500
-600
-700
-800
-900
-1000
[%1] PID 1530 Started
[%1] PID 1530 Done
lib/test-util.sh:1696: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 progressive-weight
--- 1528.stdout.expect 2025-06-25 15:04:52.609815597 +0000
+++ 1528.stdout.result 2025-06-25 15:04:52.610815605 +0000
@@ -1,16 +1 @@
1
-3
-7
-15
-31
-63
-127
-227
-327
-427
-527
-627
-727
-827
-927
-1027
[%1] PID 1535 Started
[%1] PID 1535 Done
lib/test-util.sh:1698: ble/util/conditional-sync 'ble/bin/sleep 10' 'true' 100 timeout=10
--- 1528.exit.expect 2025-06-25 15:05:02.671894862 +0000
+++ 1528.exit.result 2025-06-25 15:05:02.671894862 +0000
@@ -1 +1 @@
-142
+0
[%1] PID 1540 Started
[%1] PID 1540 Done
lib/test-util.sh:1713: kill -0 "$pid1"
--- 1528.exit.expect 2025-06-25 15:05:02.831896214 +0000
+++ 1528.exit.result 2025-06-25 15:05:02.832896223 +0000
@@ -1 +1 @@
-1
+0
lib/test-util.sh:1714: kill -0 "$pid2"
--- 1528.exit.expect 2025-06-25 15:05:02.873896568 +0000
+++ 1528.exit.result 2025-06-25 15:05:02.873896568 +0000
@@ -1 +1 @@
-1
+0
lib/test-util.sh:1715: kill -0 "$pid3"
--- 1528.exit.expect 2025-06-25 15:05:02.915896922 +0000
+++ 1528.exit.result 2025-06-25 15:05:02.915896922 +0000
@@ -1 +1 @@
-1
+0
lib/test-util.sh:1740: ble/util/get-pager ret
--- 1582.ret.expect 2025-06-25 15:05:03.21real 56.677
user 0.698
sys 0.139
real 0.693
user 0.106
sys 0.008
0899412 +0000
+++ 1582.ret.result 2025-06-25 15:05:03.211899421 +0000
@@ -1 +1 @@
-less
+pager
lib/test-util.sh:1763: ble/util/buffer.flush
--- 1587.stdout.expect 2025-06-25 15:05:03.305900214 +0000
+++ 1587.stdout.result 2025-06-25 15:05:03.306900223 +0000
@@ -1 +1 @@
-helloworld
+
lib/test-util.sh:1767: ble/util/buffer.flush
--- 1587.stdout.expect 2025-06-25 15:05:03.359900670 +0000
+++ 1587.stdout.result 2025-06-25 15:05:03.359900670 +0000
@@ -1,2 +1 @@
-hello
-world
+
lib/test-util.sh:2016: ble/util/c2s 956; [[ $ret != μ ]]
--- 1600.exit.expect 2025-06-25 15:05:05.127915595 +0000
+++ 1600.exit.result 2025-06-25 15:05:05.128915603 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:2017: ble/util/c2s 12354; [[ $ret != あ ]]
--- 1600.exit.expect 2025-06-25 15:05:05.166915924 +0000
+++ 1600.exit.result 2025-06-25 15:05:05.166915924 +0000
@@ -1 +1 @@
-0
+1
lib/test-util.sh:2047: ble/util/chars2s
--- 1606.ret.expect 2025-06-25 15:05:05.513918853 +0000
+++ 1606.ret.result 2025-06-25 15:05:05.513918853 +0000
@@ -1 +1 @@
-
+12354
\\U%08x
^
[ printf arg at line 11672 of out/ble.osh ]:1
builtin printf -v ret '\\U%08x' "$@"
^
out/ble.osh:11672: printf expected an integer, got ''
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-@c'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:06.713928983 +0000
+++ 1609.ret.result 2025-06-25 15:05:06.714928992 +0000
@@ -1 +1 @@
-98 0 99
+98 0
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-ac'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:06.831929979 +0000
+++ 1609.ret.result 2025-06-25 15:05:06.832929988 +0000
@@ -1 +1 @@
-98 1 99
+98 1
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-zc'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:06.947930959 +0000
+++ 1609.ret.result 2025-06-25 15:05:06.948930967 +0000
@@ -1 +1 @@
-98 26 99
+98 26
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-]c'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:07.065931955 +0000
+++ 1609.ret.result 2025-06-25 15:05:07.066931963 +0000
@@ -1 +1 @@
-98 29 99
+98 29
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-^c'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:07.182932942 +0000
+++ 1609.ret.result 2025-06-25 15:05:07.183932951 +0000
@@ -1 +1 @@
-98 30 99
+98 30
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\C-_c'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:07.299933930 +0000
+++ 1609.ret.result 2025-06-25 15:05:07.300933938 +0000
@@ -1 +1 @@
-98 31 99
+98 31
lib/test-util.sh:2064: ble/util/keyseq2chars 'b\M-\C-@c'; ret="${ret[*]}"
--- 1609.ret.expect 2025-06-25 15:05:07.418934935 +0000
+++ 1609.ret.result 2025-06-25 15:05:07.418934935 +0000
@@ -1 +1 @@
-98 27 0 99
+98 27 0
91.9% [section] ble/util: 1136/1236 (100 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