run-file () { local spec_name=$1; shift; local spec_file=spec/$spec_name.test.sh; local suite; suite=$(test/sh_spec.py --print-spec-suite $spec_file); local spec_subdir; case $suite in osh) spec_subdir='osh-cpp' ;; ysh) spec_subdir='ysh-cpp' ;; *) die "Invalid suite $suite" ;; esac; local base_dir=_tmp/spec/$spec_subdir; mkdir -v -p $base_dir; sh-spec $spec_file --timeout 10 --oils-bin-dir $PWD/bin --oils-cpp-bin-dir $REPO_ROOT/_bin/cxx-asan --tsv-output $base_dir/${spec_name}.tsv "$@" }
spec test index / oilshell.org
status | osh | osh-cpp | |
pass | 2 | 2 | |
N-I | 5 | 5 | |
total | 7 | 7 | |
case | osh | osh-cpp | description |
0 | pass | pass | declare -i -l -u errors can be silenced - ignore_flags_not_impl |
1 | N-I | N-I | declare -i with += |
details | details | ||
2 | N-I | N-I | declare -i with arithmetic inside strings (Nix, issue 864) |
details | details | ||
3 | pass | pass | append in arith context |
4 | N-I | N-I | declare array vs. string: mixing -a +a and () '' |
details | details | ||
5 | N-I | N-I | declare array vs. associative array |
details | details | ||
6 | N-I | N-I | declare -l -u |
details | details |
4 passed, 0 OK, 10 not implemented, 0 BUG, 0 failed, 0 timeouts, 0 cases skipped
osh | 1 declare -i with += stdout: [1 2 ] [1 2 ] [x 2 ]stderr: declare -i i ^~~~~~~ [ stdin ]:5: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i j ^~~~~~~ [ stdin ]:9: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
osh-cpp | 1 declare -i with += stdout: [1 2 ] [1 2 ] [x 2 ]stderr: declare -i i ^~~~~~~ [ stdin ]:5: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i j ^~~~~~~ [ stdin ]:9: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
osh | 2 declare -i with arithmetic inside strings (Nix, issue 864) stdout: s=1 + 2 item=array[1+1]stderr: declare -i s ^~~~~~~ [ stdin ]:1: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i item ^~~~~~~ [ stdin ]:6: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
osh-cpp | 2 declare -i with arithmetic inside strings (Nix, issue 864) stdout: s=1 + 2 item=array[1+1]stderr: declare -i s ^~~~~~~ [ stdin ]:1: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) declare -i item ^~~~~~~ [ stdin ]:6: 'declare' doesn't implement flag -i (shopt --set ignore_flags_not_impl) |
osh | 4 declare array vs. string: mixing -a +a and () '' stdout: ['', '']stderr: declare +a 'xyz1=1' ^ [ stdin ]:1: 'declare' doesn't accept option +a declare +a 'xyz2=(2 3)' ^ [ stdin ]:2: 'declare' doesn't accept option +a declare -a 'xyz3=4' ^ [ stdin ]:3: 'declare' Got -a but RHS isn't an array declare -a 'xyz4=(5 6)' ^ [ stdin ]:4: 'declare' Got -a but RHS isn't an array |
osh-cpp | 4 declare array vs. string: mixing -a +a and () '' stdout: ['', '']stderr: declare +a 'xyz1=1' ^ [ stdin ]:1: 'declare' doesn't accept option +a declare +a 'xyz2=(2 3)' ^ [ stdin ]:2: 'declare' doesn't accept option +a declare -a 'xyz3=4' ^ [ stdin ]:3: 'declare' Got -a but RHS isn't an array declare -a 'xyz4=(5 6)' ^ [ stdin ]:4: 'declare' Got -a but RHS isn't an array |
osh | 5 declare array vs. associative array stdout: ['0'] ['0']stderr: declare -a 'array=([a]=b [c]=d)' ^ [ stdin ]:1: 'declare' Got -a but RHS isn't an array declare -A 'assoc=([a]=b [c]=d)' ^ [ stdin ]:2: 'declare' Got -A but RHS isn't an associative array |
osh-cpp | 5 declare array vs. associative array stdout: ['0'] ['0']stderr: declare -a 'array=([a]=b [c]=d)' ^ [ stdin ]:1: 'declare' Got -a but RHS isn't an array declare -A 'assoc=([a]=b [c]=d)' ^ [ stdin ]:2: 'declare' Got -A but RHS isn't an associative array |
osh | 6 declare -l -u stdout: FOO foostderr: declare -l lower=FOO ^~~~~~~ [ stdin ]:1: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -u upper=foo ^~~~~~~ [ stdin ]:2: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) |
osh-cpp | 6 declare -l -u stdout: FOO foostderr: declare -l lower=FOO ^~~~~~~ [ stdin ]:1: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) declare -u upper=foo ^~~~~~~ [ stdin ]:2: Warning: OSH doesn't implement flags -l or -u (shopt --set ignore_flags_not_impl) |