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

Results for quote.test.sh

statusoshosh-cpp
pass 3434
total3434
caseoshosh-cppdescription
0pass pass Unquoted words
1pass pass Single-quoted
2pass pass Two single-quoted parts
3pass pass Unquoted and single quoted
4pass pass newline inside single-quoted string
5pass pass Double-quoted
6pass pass Mix of quotes in one word
7pass pass Var substitution
8pass pass Var substitution with braces
9pass pass Var substitution with braces, quoted
10pass pass Var length
11pass pass Storing backslashes and then echoing them
12pass pass Backslash escapes
13pass pass Backslash escapes inside double quoted string
14pass pass C-style backslash escapes inside double quoted string
15pass pass Literal $
16pass pass Quoted Literal $
17pass pass Line continuation
18pass pass Line continuation inside double quotes
19pass pass $? split over multiple lines
20pass pass Unterminated single quote
21pass pass Unterminated double quote
22pass pass Semicolon
23pass pass No tab escapes within single quotes
24pass pass $''
25pass pass $'' with quotes
26pass pass $'' with newlines
27pass pass $'' octal escapes don't have leading 0
28pass pass $'' octal escapes with fewer than 3 chars
29pass pass OSH allows invalid backslashes
30pass pass YSH parse errors with parse_backslash
31pass pass Oil allows unquoted foo\ bar
32pass pass $""
33pass pass printf
68 passed, 0 OK, 0 not implemented, 0 BUG, 0 failed, 0 timeouts, 0 cases skipped