Using binary in _tmp/native-tar-test ~/oil/_tmp/native-tar-test/oils-for-unix-0.23.0 ~/oil _build/oils.sh: Building oils-for-unix: _bin/cxx-opt-sh/SKIP_REBUILD/oils-for-unix _build/oils.sh: PWD = /home/uke/oil/_tmp/native-tar-test/oils-for-unix-0.23.0 CXX _gen/bin/oils_for_unix.SKIP_REBUILD.cc CXX _gen/bin/text_files.cc c++: error: _gen/bin/oils_for_unix.SKIP_REBUILD.cc: No such file or directory c++: fatal error: no input files compilation terminated. CXX _gen/core/runtime.asdl.cc CXX _gen/core/value.asdl.cc CXX _gen/cpp/build_stamp.cc CXX _gen/data_lang/nil8.asdl.cc CXX _gen/display/pretty.asdl.cc CXX _gen/frontend/arg_types.cc CXX _gen/frontend/consts.cc CXX _gen/frontend/help_meta.cc CXX _gen/frontend/id_kind.asdl.cc CXX _gen/frontend/signal.cc CXX _gen/frontend/syntax.asdl.cc CXX _gen/osh/arith_parse.cc CXX _gen/ysh/grammar_tables.cc CXX cpp/core.cc CXX cpp/data_lang.cc CXX cpp/fanos.cc CXX cpp/fanos_shared.c CXX cpp/frontend_flag_spec.cc CXX cpp/frontend_match.cc CXX cpp/frontend_pyreadline.cc CXX cpp/libc.cc CXX cpp/osh.cc CXX cpp/osh_tdop.cc CXX cpp/pgen2.cc CXX cpp/pylib.cc CXX cpp/stdlib.cc CXX mycpp/bump_leak_heap.cc CXX mycpp/gc_builtins.cc CXX mycpp/gc_iolib.cc CXX mycpp/gc_mops.cc CXX mycpp/gc_mylib.cc CXX mycpp/gc_str.cc CXX mycpp/hash.cc CXX mycpp/mark_sweep_heap.cc WAIT LINK _bin/cxx-opt-sh/SKIP_REBUILD/oils-for-unix osh -> oils-for-unix ysh -> oils-for-unix ~/oil Exported OSH=/home/uke/oil/_tmp/native-tar-test/oils-for-unix-0.23.0/_bin/cxx-opt-sh/osh ~/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:2403: 'shopt' got invalid option 'checkwinsize' ble/term.sh: updating tput cache for TERM=xterm... mawk: line 37: regular expression compile failed (missing operand) ^('[^']*'|\$'([^\\']|\\.)*'|\$?"([^\\"]|\\.)*"|\\.|[^[:space:]"'`;&|()])* ble/term.sh: updating tput cache for TERM=xterm... done osh warning: The 'RETURN' hook isn't implemented [??? no location ???] warning: Invalid start of UTF-8 sequence [??? no location ???] warning: Invalid start of UTF-8 sequence real 0.411 user 0.250 sys 0.073 real 0.274 user 0.028 sys 0.011 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 DONE Running out/ble.osh Running lib/test-main.sh lib/test-main.sh:58: ble/util/readlink f.txt [[ $ret != /* ]] && ret=${PWD%/}/$ret --- 2529.ret.expect 2024-10-29 21:14:01.208340118 +0000 +++ 2529.ret.result 2024-10-29 21:14:01.208340118 +0000 @@ -1 +1 @@ -/tmp/blesh/1000/2454.test/2529.d/ab/cd/ef/file.txt +/tmp/blesh/1000/2454.test/2529.d/ef/file.txt lib/test-main.sh:80: path=phys.link/1.txt ble/util/readlink/.resolve-physical-directory declare -p path PWD >&2 [[ $path == */phys.dir/1.txt && $PWD == "$pwd" ]] --- 2529.exit.expect 2024-10-29 21:14:01.260340145 +0000 +++ 2529.exit.result 2024-10-29 21:14:01.260340145 +0000 @@ -1 +1 @@ -0 +1 declare -- path=/tmp/blesh/1000/2454.test/2529.d/1.txt declare -x PWD=/tmp/blesh/1000/2454.test/2529.d lib/test-main.sh:101: [[ ${value//$pattern/$'\n'} == $'\n'hello$'\n' ]] --- 2562.exit.expect 2024-10-29 21:14:01.304340168 +0000 +++ 2562.exit.result 2024-10-29 21:14:01.308340170 +0000 @@ -1 +1 @@ -0 +1 84.2% [section] ble/main: 16/19 (3 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 --- 2573.ret.expect 2024-10-29 21:14:01.496340267 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.496340267 +0000 @@ -1 +1 @@ -i + lib/test-util.sh:191: ble/variable#get-attr x; ret=$attr --- 2573.ret.expect 2024-10-29 21:14:01.504340272 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.504340272 +0000 @@ -1 +1 @@ -x + lib/test-util.sh:192: ble/variable#get-attr r; ret=$attr --- 2573.ret.expect 2024-10-29 21:14:01.512340276 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.512340276 +0000 @@ -1 +1 @@ -r + lib/test-util.sh:195: ble/variable#get-attr u; ret=$attr --- 2573.ret.expect 2024-10-29 21:14:01.520340280 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.520340280 +0000 @@ -1 +1 @@ -u + lib/test-util.sh:196: ble/variable#get-attr l; ret=$attr --- 2573.ret.expect 2024-10-29 21:14:01.524340282 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.524340282 +0000 @@ -1 +1 @@ -l + lib/test-util.sh:197: ble/variable#get-attr c; ret=$attr --- 2573.ret.expect 2024-10-29 21:14:01.532340287 +0000 +++ 2573.ret.result 2024-10-29 21:14:01.532340287 +0000 @@ -1 +1 @@ -c + lib/test-util.sh:203: ble/variable#has-attr i i --- 2573.exit.expect 2024-10-29 21:14:01.540340291 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.540340291 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:204: ble/variable#has-attr x x --- 2573.exit.expect 2024-10-29 21:14:01.548340294 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.548340294 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:205: ble/variable#has-attr r r --- 2573.exit.expect 2024-10-29 21:14:01.556340299 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.556340299 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:212: ble/variable#has-attr u u --- 2573.exit.expect 2024-10-29 21:14:01.568340305 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.568340305 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:213: ble/variable#has-attr l l --- 2573.exit.expect 2024-10-29 21:14:01.576340309 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.576340309 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:214: ble/variable#has-attr c c --- 2573.exit.expect 2024-10-29 21:14:01.584340314 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.584340314 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:226: ble/is-inttype i --- 2573.exit.expect 2024-10-29 21:14:01.596340319 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.596340319 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:228: ble/is-readonly r --- 2573.exit.expect 2024-10-29 21:14:01.636340341 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.636340341 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:231: ble/is-transformed u --- 2573.exit.expect 2024-10-29 21:14:01.644340344 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.644340344 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:232: ble/is-transformed l --- 2573.exit.expect 2024-10-29 21:14:01.648340347 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.648340347 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:233: ble/is-transformed c --- 2573.exit.expect 2024-10-29 21:14:01.656340351 +0000 +++ 2573.exit.result 2024-10-29 21:14:01.656340351 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:251: is-global v0 --- 2608.exit.expect 2024-10-29 21:14:01.672340359 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.672340359 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:252: is-global v1 --- 2608.exit.expect 2024-10-29 21:14:01.680340364 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.680340364 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:257: ble/variable#is-global v0 --- 2608.exit.expect 2024-10-29 21:14:01.704340376 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.704340376 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:258: ble/variable#is-global v1 --- 2608.exit.expect 2024-10-29 21:14:01.712340380 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.712340380 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:263: ble/variable#is-global v0u --- 2608.exit.expect 2024-10-29 21:14:01.736340392 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.736340392 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:265: ble/variable#is-global v1u --- 2608.exit.expect 2024-10-29 21:14:01.748340399 +0000 +++ 2608.exit.result 2024-10-29 21:14:01.748340399 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:597: ble/string#split-lines a "" ; status --- 2656.stdout.expect 2024-10-29 21:14:02.036340548 +0000 +++ 2656.stdout.result 2024-10-29 21:14:02.036340548 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:599: ble/string#split-lines a " " ; status --- 2656.stdout.expect 2024-10-29 21:14:02.044340553 +0000 +++ 2656.stdout.result 2024-10-29 21:14:02.044340553 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:600: ble/string#split-lines a "1 " ; status --- 2656.stdout.expect 2024-10-29 21:14:02.052340556 +0000 +++ 2656.stdout.result 2024-10-29 21:14:02.052340556 +0000 @@ -1 +1 @@ -2:(1 ) +1:(1) lib/test-util.sh:601: ble/string#split-lines a " 2" ; status --- 2656.stdout.expect 2024-10-29 21:14:02.056340559 +0000 +++ 2656.stdout.result 2024-10-29 21:14:02.056340559 +0000 @@ -1 +1 @@ -2:( 2) +0:() lib/test-util.sh:602: ble/string#split-lines a "1 3" ; status --- 2656.stdout.expect 2024-10-29 21:14:02.064340563 +0000 +++ 2656.stdout.result 2024-10-29 21:14:02.064340563 +0000 @@ -1 +1 @@ -3:(1 3) +1:(1) lib/test-util.sh:782: ble/string#quote-command echo hello world --- 2674.ret.expect 2024-10-29 21:14:02.320340696 +0000 +++ 2674.ret.result 2024-10-29 21:14:02.320340696 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:784: ble/string#quote-command echo "'test'" --- 2674.ret.expect 2024-10-29 21:14:02.328340700 +0000 +++ 2674.ret.result 2024-10-29 21:14:02.328340700 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:786: ble/string#quote-command echo a{1..4} --- 2674.ret.expect 2024-10-29 21:14:02.336340704 +0000 +++ 2674.ret.result 2024-10-29 21:14:02.336340704 +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 --- 2674.stdout.expect 2024-10-29 21:14:02.344340708 +0000 +++ 2674.stdout.result 2024-10-29 21:14:02.344340708 +0000 @@ -1 +1 @@ -echo 'hello' 'world' +echo hello world lib/test-util.sh:792: ble/util/print-quoted-command echo "'test'" --- 2674.stdout.expect 2024-10-29 21:14:02.356340714 +0000 +++ 2674.stdout.result 2024-10-29 21:14:02.356340714 +0000 @@ -1 +1 @@ -echo ''\''test'\''' +echo $'\'test\'' lib/test-util.sh:794: ble/util/print-quoted-command echo a{1..4} --- 2674.stdout.expect 2024-10-29 21:14:02.364340719 +0000 +++ 2674.stdout.result 2024-10-29 21:14:02.364340719 +0000 @@ -1 +1 @@ -echo 'a1' 'a2' 'a3' 'a4' +echo a1 a2 a3 a4 lib/test-util.sh:843: ble/util/strlen α --- 2689.ret.expect 2024-10-29 21:14:02.464340771 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.464340771 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:844: ble/util/strlen αβγ --- 2689.ret.expect 2024-10-29 21:14:02.472340775 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.472340775 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:845: ble/util/strlen あ --- 2689.ret.expect 2024-10-29 21:14:02.480340779 +0000 +++ 2689.ret.result 2 ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) 024-10-29 21:14:02.480340779 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:846: ble/util/strlen あいう --- 2689.ret.expect 2024-10-29 21:14:02.484340781 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.484340781 +0000 @@ -1 +1 @@ -9 +3 lib/test-util.sh:847: ble/util/strlen aα --- 2689.ret.expect 2024-10-29 21:14:02.492340785 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.492340785 +0000 @@ -1 +1 @@ -3 +2 lib/test-util.sh:848: ble/util/strlen aαあ --- 2689.ret.expect 2024-10-29 21:14:02.500340789 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.500340789 +0000 @@ -1 +1 @@ -6 +3 lib/test-util.sh:852: ble/util/strlen α --- 2689.ret.expect 2024-10-29 21:14:02.508340793 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.508340793 +0000 @@ -1 +1 @@ -2 +1 lib/test-util.sh:853: ble/util/strlen あ --- 2689.ret.expect 2024-10-29 21:14:02.516340798 +0000 +++ 2689.ret.result 2024-10-29 21:14:02.516340798 +0000 @@ -1 +1 @@ -3 +1 lib/test-util.sh:885: ble/util/substr あいう 0 3 --- 2706.ret.expect 2024-10-29 21:14:02.584340833 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.584340833 +0000 @@ -1 +1 @@ -あ +あいう lib/test-util.sh:886: ble/util/substr あいう 3 6 --- 2706.ret.expect 2024-10-29 21:14:02.592340837 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.592340837 +0000 @@ -1 +1 @@ -いう + lib/test-util.sh:887: ble/util/substr あいう 0 1 --- 2706.ret.expect 2024-10-29 21:14:02.600340841 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.600340841 +0000 @@ -1 +1 @@ - +あ lib/test-util.sh:888: ble/util/substr あいう 1 2 --- 2706.ret.expect 2024-10-29 21:14:02.608340846 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.608340846 +0000 @@ -1 +1 @@ - +いう lib/test-util.sh:889: ble/util/substr あいう 1 4 --- 2706.ret.expect 2024-10-29 21:14:02.612340848 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.612340848 +0000 @@ -1 +1 @@ - +いう lib/test-util.sh:890: ble/util/substr あいう 7 5 --- 2706.ret.expect 2024-10-29 21:14:02.620340851 +0000 +++ 2706.ret.result 2024-10-29 21:14:02.620340851 +0000 @@ -1 +1 @@ - + lib/test-util.sh:1239: ble/util/mapfile a < <(echo); status --- 2724.stdout.expect 2024-10-29 21:14:03.236341172 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.236341172 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1240: ble/util/mapfile a < <(echo;echo); status --- 2724.stdout.expect 2024-10-29 21:14:03.248341178 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.248341178 +0000 @@ -1 +1 @@ -2:( ) +0:() lib/test-util.sh:1241: ble/util/mapfile a < <(echo a;echo;echo b); status --- 2724.stdout.expect 2024-10-29 21:14:03.256341182 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.256341182 +0000 @@ -1 +1 @@ -3:(a b) +1:(a) lib/test-util.sh:1259: ble/util/assign-array a echo; status --- 2724.stdout.expect 2024-10-29 21:14:03.312341211 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.312341211 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1262: ble/util/assign-array a "echo; echo; echo"; status --- 2724.stdout.expect 2024-10-29 21:14:03.324341218 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.324341218 +0000 @@ -1 +1 @@ -3:( ) +0:() lib/test-util.sh:1263: ble/util/assign-array a "echo 1; echo; echo 2"; status --- 2724.stdout.expect 2024-10-29 21:14:03.332341221 +0000 +++ 2724.stdout.result 2024-10-29 21:14:03.332341221 +0000 @@ -1 +1 @@ -3:(1 2) +1:(1) lib/test-util.sh:1360: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.600341361 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.600341361 +0000 @@ -1,2 +1 @@ pre -original ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1362: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.612341367 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.612341367 +0000 @@ -1,3 +1,2 @@ pre -original post ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1364: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.624341373 +0000 ++ ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#advice/original:f1 ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#advice/original:f1' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:echo' not found (OILS-ERR-100) ble/function#push/0:echo ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: '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. + 2808.stdout.result 2024-10-29 21:14:03.624341373 +0000 @@ -1,3 +1,2 @@ A -original post ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1366: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.632341377 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.632341377 +0000 @@ -1,3 +1,2 @@ A -original B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1368: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.644341383 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.644341383 +0000 @@ -1,5 +1,4 @@ A [ -original ] B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1374: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.656341390 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.656341390 +0000 @@ -1,5 +1,4 @@ A [ -original quick ] B ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1377: f1 --- 2808.stdout.expect 2024-10-29 21:14:03.696341410 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.696341410 +0000 @@ -1 +1 @@ -original + --- 2808.exit.expect 2024-10-29 21:14:03.700341413 +0000 +++ 2808.exit.result 2024-10-29 21:14:03.700341413 +0000 @@ -1 +1 @@ -0 +127 ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1378: f1 1 --- 2808.stdout.expect 2024-10-29 21:14:03.708341417 +0000 +++ 2808.stdout.result 2024-10-29 21:14:03.708341417 +0000 @@ -1 +1 @@ -original 1 + --- 2808.exit.expect 2024-10-29 21:14:03.716341421 +0000 +++ 2808.exit.result 2024-10-29 21:14:03.716341421 +0000 @@ -1 +1 @@ -0 +127 ble/function#advice/original:"${ADVICE_WORDS[@]}" ^~~ out/ble.osh:4505: 'ble/function#advice/original:f1' not found (OILS-ERR-100) lib/test-util.sh:1391: echo 1 2 3 --- 2829.stdout.expect 2024-10-29 21:14:03.736341431 +0000 +++ 2829.stdout.result 2024-10-29 21:14:03.736341431 +0000 @@ -1,3 +1,3 @@ A -(1 2 3) +1 2 3 Z lib/test-util.sh:1393: echo 1 2 3 --- 2829.stdout.expect 2024-10-29 21:14:03.744341435 +0000 +++ 2829.stdout.result 2024-10-29 21:14:03.744341435 +0000 @@ -1,5 +1,3 @@ [ -A -(1 2 3) -Z +1 2 3 ] lib/test-util.sh:1396: echo 1 2 3 --- 2829.stdout.expect 2024-10-29 21:14:03.752341440 +0000 +++ 2829.stdout.result 2024-10-29 21:14:03.756341442 +0000 @@ -1,3 +1 @@ -A -(1 2 3) -Z +1 2 3 lib/test-util.sh:1398: echo 1 2 3 --- 2829.stdout.expect 2024-10-29 21:14:03.764341446 +0000 +++ 2829.stdout.result 2024-10-29 21:14:03.764341446 +0000 @@ -1 +1 @@ -(1 2 3) +1 2 3 lib/test-util.sh:1400: echo 1 2 3 --- 2829.stdout.expect 2024-10-29 21:14:03.772341450 +0000 +++ 2829.stdout.result 2024-10-29 21:14:03.772341450 +0000 @@ -1 +1 @@ -[1 2 3] +1 2 3 lib/test-util.sh:1401: ble/is-function echo --- 2829.exit.expect 2024-10-29 21:14:03.780341454 +0000 +++ 2829.exit.result 2024-10-29 21:14:03.780341454 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1402: ble/function#pop echo --- 2829.exit.expect 2024-10-29 21:14:03.816341473 +0000 +++ 2829.exit.result 2024-10-29 21:14:03.816341473 +0000 @@ -1 +1 @@ -0 +1 ble/function#pop: echo is not a function. lib/test-util.sh:1439: ble/util/sprintf ret "[%#.2g]" 27 --- 2845.ret.expect 2024-10-29 21:14:03.860341495 +0000 +++ 2845.ret.result 2024-10-29 21:14:03.860341495 +0000 @@ -1 +1 @@ -[27.] +[1b] [%#.2g] ^ [ printf arg at line 4690 of out/ble.osh ]:1 lib/test-util.sh:1440: ble/util/sprintf ret "[%#.2f]" 27 --- 2845.ret.expect 2024-10-29 21:14:03.868341500 +0000 +++ 2845.ret.result 2024-10-29 21:14:03.868341500 +0000 @@ -1 +1 @@ -[27.00] +[1b] [%#.2f] ^ [ printf arg at line 4690 of out/ble.osh ]:1 lib/test-util.sh:1478: ble/alias#expand aaa1 --- 2851.ret.expect 2024-10-29 21:14:03.900341517 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.900341517 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1480: ble/alias#expand aaa2 --- 2851.ret.expect 2024-10-29 21:14:03.908341520 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.908341520 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1481: ble/alias#expand aaa1 --- 2851.ret.expect 2024-10-29 21:14:03.916341525 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.916341525 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1483: ble/alias#expand aaa3 --- 2851.ret.expect 2024-10-29 21:14:03.924341529 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.924341529 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1484: ble/alias#expand aaa2 --- 2851.ret.expect 2024-10-29 21:14:03.932341533 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.932341533 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1485: ble/alias#expand aaa1 --- 2851.ret.expect 2024-10-29 21:14:03.940341537 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.940341537 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1487: ble/alias#expand aaa4 --- 2851.ret.expect 2024-10-29 21:14:03.948341542 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.948341542 +0000 @@ -1 +1 @@ -echo +aaa4 lib/test-util.sh:1488: ble/alias#expand aaa3 --- 2851.ret.expect 2024-10-29 21:14:03.956341545 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.956341545 +0000 @@ -1 +1 @@ -aaa4 +aaa3 lib/test-util.sh:1489: ble/alias#expand aaa2 --- 2851.ret.expect 2024-10-29 21:14:03.964341550 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.964341550 +0000 @@ -1 +1 @@ -aaa3 hello +aaa2 lib/test-util.sh:1490: ble/alias#expand aaa1 --- 2851.ret.expect 2024-10-29 21:14:03.972341554 +0000 +++ 2851.ret.result 2024-10-29 21:14:03.972341554 +0000 @@ -1 +1 @@ -aaa2 world +aaa1 lib/test-util.sh:1582: declare -p v2a xv2a | cat -v >&2; [[ $v2a == $xv2a ]] --- 2890.exit.expect 2024-10-29 21:14:04.112341627 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.112341627 +0000 @@ -1 +1 @@ -0 +1 declare -- xv2a=a lib/test-util.sh:1582: declare -p v2b xv2b | cat -v >&2; [[ $v2b == $xv2b ]] --- 2890.exit.expect 2024-10-29 21:14:04.120341630 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.120341630 +0000 @@ -1 +1 @@ -0 +1 declare -- xv2b=ab lib/test-util.sh:1582: declare -p v3a xv3a | cat -v >&2; [[ $v3a == $xv3a ]] --- 2890.exit.expect 2024-10-29 21:14:04.132341637 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.132341637 +0000 @@ -1 +1 @@ -0 +1 declare -- xv3a=' ' lib/test-util.sh:1582: declare -p v3b xv3b | cat -v >&2; [[ $v3b == $xv3b ]] --- 2890.exit.expect 2024-10-29 21:14:04.144341643 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.144341643 +0000 @@ -1 +1 @@ -0 +1 declare -- xv3b='a b' lib/test-util.sh:1582: declare -p v4a xv4a | cat -v >&2; [[ $v4a == $xv4a ]] --- 2890.exit.expect 2024-10-29 21:14:04.152341647 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.152341647 +0000 @@ -1 +1 @@ -0 +1 declare -- xv4a=$'\n' lib/test-util.sh:1582: declare -p v4b xv4b | cat -v >&2; [[ $v4b == $xv4b ]] --- 2890.exit.expect 2024-10-29 21:14:04.164341654 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.164341654 +0000 @@ -1 +1 @@ -0 +1 declare -- xv4b=$'a\nb' lib/test-util.sh:1582: declare -p v5a xv5a | cat -v >&2; [[ $v5a == $xv5a ]] --- 2890.exit.expect 2024-10-29 21:14:04.176341660 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.176341660 +0000 @@ -1 +1 @@ -0 +1 declare -- xv5a=$'\r' lib/test-util.sh:1582: declare -p v5b xv5b | cat -v >&2; [[ $v5b == $xv5b ]] --- 2890.exit.expect 2024-10-29 21:14:04.188341666 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.188341666 +0000 @@ -1 +1 @@ -0 +1 declare -- xv5b=$'a\rb' lib/test-util.sh:1582: declare -p v6a xv6a | cat -v >&2; [[ $v6a == $xv6a ]] --- 2890.exit.expect 2024-10-29 21:14:04.196341670 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.196341670 +0000 @@ -1 +1 @@ -0 +1 de if [[ :$shopt: == *:dotglob:* ]]; then shopt -s dotglob; else shopt -u dotglob; fi ^~~~~ out/ble.osh:5250: 'shopt' got invalid option 'dotglob' clare -- xv6a=$'\u0001' lib/test-util.sh:1582: declare -p v6b xv6b | cat -v >&2; [[ $v6b == $xv6b ]] --- 2890.exit.expect 2024-10-29 21:14:04.208341677 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.208341677 +0000 @@ -1 +1 @@ -0 +1 declare -- xv6b=$'a\u0001b' lib/test-util.sh:1582: declare -p v7a xv7a | cat -v >&2; [[ $v7a == $xv7a ]] --- 2890.exit.expect 2024-10-29 21:14:04.248341697 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.252341700 +0000 @@ -1 +1 @@ -0 +1 declare -- xv7a=$'\u0002' lib/test-util.sh:1582: declare -p v7b xv7b | cat -v >&2; [[ $v7b == $xv7b ]] --- 2890.exit.expect 2024-10-29 21:14:04.260341704 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.260341704 +0000 @@ -1 +1 @@ -0 +1 declare -- xv7b=$'a\u0002b' lib/test-util.sh:1582: declare -p v8a xv8a | cat -v >&2; [[ $v8a == $xv8a ]] --- 2890.exit.expect 2024-10-29 21:14:04.272341710 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.272341710 +0000 @@ -1 +1 @@ -0 +1 declare -- xv8a='^?' lib/test-util.sh:1582: declare -p v8b xv8b | cat -v >&2; [[ $v8b == $xv8b ]] --- 2890.exit.expect 2024-10-29 21:14:04.284341716 +0000 +++ 2890.exit.result 2024-10-29 21:14:04.284341716 +0000 @@ -1 +1 @@ -0 +1 declare -- xv8b='a^?b' lib/test-util.sh:1604: status a1 --- 2890.ret.expect 2024-10-29 21:14:04.296341722 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.296341722 +0000 @@ -1 +1 @@ -1:() +0:() lib/test-util.sh:1604: status a2 --- 2890.ret.expect 2024-10-29 21:14:04.304341727 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.304341727 +0000 @@ -1 +1 @@ -2:(a ab) +0:() lib/test-util.sh:1604: status a3 --- 2890.ret.expect 2024-10-29 21:14:04.312341730 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.312341730 +0000 @@ -1 +1 @@ -2:( a b) +0:() lib/test-util.sh:1604: status a4 --- 2890.ret.expect 2024-10-29 21:14:04.316341732 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.316341732 +0000 @@ -1,3 +1 @@ -2:( - a -b) +0:() lib/test-util.sh:1604: status a5 --- 2890.ret.expect 2024-10-29 21:14:04.324341737 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.324341737 +0000 @@ -1 +1 @@ -2:( a b) +0:() lib/test-util.sh:1604: status a6 --- 2890.ret.expect 2024-10-29 21:14:04.332341740 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.332341740 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1604: status a7 --- 2890.ret.expect 2024-10-29 21:14:04.340341745 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.340341745 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1604: status a8 --- 2890.ret.expect 2024-10-29 21:14:04.344341747 +0000 +++ 2890.ret.result 2024-10-29 21:14:04.344341747 +0000 @@ -1 +1 @@ -2:( ab) +0:() lib/test-util.sh:1615: [[ ! ${v0+set} ]] --- 2971.exit.expect 2024-10-29 21:14:04.364341757 +0000 +++ 2971.exit.result 2024-10-29 21:14:04.364341757 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1616: status v1 --- 2971.stdout.expect 2024-10-29 21:14:04.372341762 +0000 +++ 2971.stdout.result 2024-10-29 21:14:04.372341762 +0000 @@ -1 +1 @@ -1:(123) +1:(2) lib/test-util.sh:1617: status v2 --- 2971.stdout.expect 2024-10-29 21:14:04.380341765 +0000 +++ 2971.stdout.result 2024-10-29 21:14:04.380341765 +0000 @@ -1 +1 @@ -3:(1 2 3) +1:(3) lib/test-util.sh:1618: status v3 --- 2971.stdout.expect 2024-10-29 21:14:04.388341770 +0000 +++ 2971.stdout.result 2024-10-29 21:14:04.388341770 +0000 @@ -1 +1 @@ -1:(bbb) +3:(bbb) lib/test-util.sh:1619: status v4 --- 2971.stdout.expect 2024-10-29 21:14:04.396341774 +0000 +++ 2971.stdout.result 2024-10-29 21:14:04.396341774 +0000 @@ -1 +1 @@ -1:(ccc) +1:(5) lib/test-util.sh:1631: ble/util/print-global-definitions value --- 2971.stdout.expect 2024-10-29 21:14:04.412341782 +0000 +++ 2971.stdout.result 2024-10-29 21:14:04.412341782 +0000 @@ -1 +1 @@ -declare value='hello '\''world'\''' +declare value; builtin unset -v value lib/test-util.sh:1668: shopt -q failglob --- 2988.exit.expect 2024-10-29 21:14:04.484341820 +0000 +++ 2988.exit.result 2024-10-29 21:14:04.484341820 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1669: shopt -q nullglob --- 2988. ble/function#push/0:ble/util/msleep ^~~ [ eval arg at line 4396 of out/ble.osh ]:1 builtin eval -- "$1"; local ext=$? ^~~~ out/ble.osh:4396: 'ble/function#push/0:ble/util/msleep' not found (OILS-ERR-100) [%1] PID 3021 Started [%2] PID 3023 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^~ lib/test-util.sh:1700: 'set' got invalid flag '-m' [%3] PID 3025 Started set -m; ble/bin/sleep 10 & pid3=$!; set +m ^ lib/test-util.sh:1700: 'set' got invalid flag '-m' exit.expect 2024-10-29 21:14:04.488341822 +0000 +++ 2988.exit.result 2024-10-29 21:14:04.488341822 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1670: shopt -q extglob --- 2988.exit.expect 2024-10-29 21:14:04.496341826 +0000 +++ 2988.exit.result 2024-10-29 21:14:04.496341826 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1681: ble-measure -q "ble/util/msleep 100"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 2998.exit.expect 2024-10-29 21:14:04.636341900 +0000 +++ 2998.exit.result 2024-10-29 21:14:04.636341900 +0000 @@ -1 +1 @@ -0 +1 0 usec lib/test-util.sh:1682: ble-measure -q "ble/util/sleep 0.1"; echo "$ret usec" >&2; ((msec=ret/1000,90<=msec&&msec<=120)) --- 2998.exit.expect 2024-10-29 21:14:04.748341958 +0000 +++ 2998.exit.result 2024-10-29 21:14:04.748341958 +0000 @@ -1 +1 @@ -0 +1 0 usec lib/test-util.sh:1690: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 --- 3005.stdout.expect 2024-10-29 21:14:14.768347329 +0000 +++ 3005.stdout.result 2024-10-29 21:14:14.768347329 +0000 @@ -1,10 +1 @@ 100 -200 -300 -400 -500 -600 -700 -800 -900 -1000 [%1] PID 3007 Started [%1] PID 3007 Done lib/test-util.sh:1692: ble/util/conditional-sync 'ble/bin/sleep 10' '((time<1000))' 100 progressive-weight --- 3005.stdout.expect 2024-10-29 21:14:24.784338522 +0000 +++ 3005.stdout.result 2024-10-29 21:14:24.784338522 +0000 @@ -1,16 +1 @@ 1 -3 -7 -15 -31 -63 -127 -227 -327 -427 -527 -627 -727 -827 -927 -1027 [%1] PID 3012 Started [%1] PID 3012 Done lib/test-util.sh:1694: ble/util/conditional-sync 'ble/bin/sleep 10' 'true' 100 timeout=10 --- 3005.exit.expect 2024-10-29 21:14:34.800342175 +0000 +++ 3005.exit.result 2024-10-29 21:14:34.800342175 +0000 @@ -1 +1 @@ -142 +0 [%1] PID 3017 Started [%1] PID 3017 Done lib/test-util.sh:1709: kill -0 "$pid1" --- 3005.exit.expect 2024-10-29 21:14:34.880342187 +0000 +++ 3005.exit.result 2024-10-29 21:14:34.880342187 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1710: kill -0 "$pid2" --- 3005.exit.expect 2024-10-29 21:14:34.888342189 +0000 +++ 3005.exit.result 2024-10-29 21:14:34.888342189 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1711: kill -0 "$pid3" --- 3005.exit.expect 2024-10-29 21:14:34.900342191 +0000 +++ 3005.exit.result 2024-10-29 21:14:34.900342191 +0000 @@ -1 +1 @@ -1 +0 lib/test-util.sh:1736: ble/util/get-pager ret --- 3059.ret.expect 2024-10-29 21:14:34.956342200 +0000 +++ 3059.ret.result 2024-10-29 21:14:34.956342200 +0000 @@ -1 +1 @@ -less +pager lib/test-util.sh:1758: ble/util/buffer.flush --- 3064.stdout.expect 2024-10-29 21:14:34.976342203 +0000 +++ 3064.stdout.result 2024-10-29 21:14:34.976342203 +0000 @@ -1 +1 @@ -helloworld + lib/test-util.sh:1762: ble/util/buffer.flush --- 3064.stdout.expect 2024-10-29 21:14:34.984342204 +0000 +++ 3064.stdout.result 2024-10-29 21:14:34.984342204 +0000 @@ -1,2 +1 @@ -hello -world + lib/test-util.sh:1958: ble/util/c2s 956; [[ $ret != μ ]] --- 3070.exit.expect 2024-10-29 21:14:35.104342223 +0000 +++ 3070.exit.result 2024-10-29 21:14:35.104342223 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1959: ble/util/c2s 12354; [[ $ret != あ ]] --- 3070.exit.expect 2024-10-29 21:14:35.112342224 +0000 +++ 3070.exit.result 2024-10-29 21:14:35.112342224 +0000 @@ -1 +1 @@ -0 +1 lib/test-util.sh:1989: ble/util/chars2s --- 3076.ret.expect 2024-10-29 21:14:35.212342240 +0000 +++ 3076.ret.result 2024-10-29 21:14:35.212342240 +0000 @@ -1 +1 @@ - +12354 \\U%08x ^ [ printf arg at line 10195 of out/ble.osh ]:1 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-@c'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.344342261 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.344342261 +0000 @@ -1 +1 @@ -98 0 99 +98 0 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-ac'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.356342263 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.356342263 +0000 @@ -1 +1 @@ -98 1 99 +98 1 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-zc'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-real 34.395 user 0.033 sys 0.049 real 0.126 user 0.019 sys 0.017 29 21:14:35.396342270 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.396342270 +0000 @@ -1 +1 @@ -98 26 99 +98 26 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-]c'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.408342271 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.408342271 +0000 @@ -1 +1 @@ -98 29 99 +98 29 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-^c'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.420342273 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.420342273 +0000 @@ -1 +1 @@ -98 30 99 +98 30 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\C-_c'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.432342275 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.432342275 +0000 @@ -1 +1 @@ -98 31 99 +98 31 lib/test-util.sh:2006: ble/util/keyseq2chars 'b\M-\C-@c'; ret="${ret[*]}" --- 3079.ret.expect 2024-10-29 21:14:35.444342277 +0000 +++ 3079.ret.result 2024-10-29 21:14:35.444342277 +0000 @@ -1 +1 @@ -98 27 0 99 +98 27 0 89.1% [section] ble/util: 1095/1228 (133 fail, 0 crash, 6 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