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 "$@" } posix: spec test case results

Results for posix.test.sh

statusoshosh-cpp
pass 1515
total1515
caseoshosh-cppdescription
0pass pass Empty for loop is allowed
1pass pass Empty for loop without in. Do can be on the same line I guess.
2pass pass Empty case statement
3pass pass Last case without ;;
4pass pass Only case without ;;
5pass pass Case with optional (
6pass pass Empty action for case is syntax error
7pass pass Empty action is allowed for last case
8pass pass Case with | pattern
9pass pass Bare semi-colon not allowed
10pass pass Command substitution in default
11pass pass Arithmetic expansion
12pass pass Newlines in compound lists
13pass pass Multiple here docs on one line
14pass pass cat here doc; echo; cat here doc
30 passed, 0 OK, 0 not implemented, 0 BUG, 0 failed, 0 timeouts, 0 cases skipped