Results for var-sub-quote.test.sh

statusbashmkshkshtoyshsushbrushosh
pass 38373713352439
ok 0100000
N-I 0100000
BUG 1000000
FAIL 002264150
total39393939393939
casebashmkshkshtoyshsushbrushoshdescription
0pass pass pass pass pass pass pass "${empty:-}"
1pass pass pass pass pass pass pass ${empty:-}
2pass N-I FAIL FAIL pass pass pass array with empty values
detailsdetailsdetails
3pass pass pass pass pass FAIL pass substitution of IFS character, quoted and unquoted
details
4pass pass pass pass pass pass pass :-
5pass pass pass pass pass pass pass -
6pass pass pass FAIL pass pass pass Inner single quotes
details
7pass pass pass pass pass FAIL pass Inner single quotes, outer double quotes
details
8pass pass pass FAIL pass pass pass Inner double quotes
details
9pass pass pass FAIL pass pass pass Inner double quotes, outer double quotes
details
10pass pass pass pass pass pass pass Multiple words: no quotes
11pass pass pass FAIL pass FAIL pass Multiple words: no outer quotes, inner single quotes
detailsdetails
12pass pass pass FAIL pass FAIL pass Multiple words: no outer quotes, inner double quotes
detailsdetails
13pass pass pass pass pass pass pass Multiple words: outer double quotes, no inner quotes
14pass pass pass FAIL pass pass pass Multiple words: outer double quotes, inner double quotes
details
15pass pass pass pass pass FAIL pass Multiple words: outer double quotes, inner single quotes
details
16pass pass pass FAIL pass FAIL pass Mixed inner quotes
detailsdetails
17pass pass pass FAIL pass pass pass Mixed inner quotes with outer quotes
details
18pass pass pass FAIL pass FAIL pass part_value tree with multiple words
detailsdetails
19pass pass pass FAIL pass pass pass part_value tree on RHS
details
20pass pass pass FAIL pass pass pass Var with multiple words: no quotes
details
21pass pass pass FAIL pass pass pass Multiple words: no outer quotes, inner single quotes
details
22pass pass pass FAIL pass FAIL pass Multiple words: no outer quotes, inner double quotes
detailsdetails
23pass pass pass FAIL pass pass pass Multiple words: outer double quotes, no inner quotes
details
24pass pass pass FAIL pass pass pass Multiple words: outer double quotes, inner double quotes
details
25pass pass pass FAIL FAIL FAIL pass Multiple words: outer double quotes, inner single quotes
detailsdetailsdetails
26pass pass pass FAIL pass FAIL pass No outer quotes, Multiple internal quotes
detailsdetails
27pass pass pass pass pass pass pass Strip a string with single quotes, unquoted
28pass pass pass pass pass pass pass Strip a string with single quotes, double quoted
29pass pass pass pass pass FAIL pass The string to strip is space sensitive
details
30pass pass pass FAIL pass pass pass The string to strip can be single quoted, outer is unquoted
details
31pass ok FAIL pass FAIL pass pass Syntax error for single quote in double quote
detailsdetailsdetails
32pass pass pass FAIL pass FAIL pass "${undef-'c d'}" and "${foo%'c d'}" are parsed differently
detailsdetails
33pass pass pass FAIL pass pass pass $'' allowed within VarSub arguments
details
34pass pass pass FAIL pass pass pass # operator with single quoted arg (dash/ash and bash/mksh disagree, reported by Crestwave)
details
35pass pass pass FAIL pass pass pass / operator with single quoted arg (causes syntax error in regex in OSH, reported by Crestwave)
details
36pass pass pass FAIL FAIL FAIL pass single quotes work inside character classes
detailsdetailsdetails
37pass pass pass FAIL pass FAIL pass comparison: :- operator with single quoted arg
detailsdetails
38BUG pass pass FAIL FAIL FAIL pass Right Brace as argument (similar to #702)
detailsdetailsdetailsdetails
223 passed, 1 OK, 1 not implemented, 1 BUG, 47 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

mksh2 array with empty values

stdout:
stderr: 
mksh: <stdin>[1]: syntax error: '(' unexpected
ksh2 array with empty values

[ksh stdout] Expected "['', 'x', '', '']\n", got ''
[ksh status] Expected 0, got 1

stdout:
stderr: 
E: ksh: <stdin>[1]: syntax error: unexpected '('
toysh2 array with empty values

[toysh stdout] Expected "['', 'x', '', '']\n", got ''
[toysh status] Expected 0, got 2

stdout:
stderr: 
main: line 1: sh: syntax error: )
brush3 substitution of IFS character, quoted and unquoted

[brush stdout] Expected "['']\n[':']\n", got "[]\n[':']\n"

stdout:
[]
[':']
stderr:
toysh6 Inner single quotes

[toysh stdout] Expected "['b']\n", got '["\'b\'"]\n'

stdout:
["'b'"]
stderr:
brush7 Inner single quotes, outer double quotes

[brush stdout] Expected '["\'b\'"]\n', got "['b']\n"

stdout:
['b']
stderr:
toysh8 Inner double quotes

[toysh stdout] Expected "['b']\n", got '[\'"b"\']\n'

stdout:
['"b"']
stderr:
toysh9 Inner double quotes, outer double quotes

[toysh stdout] Expected "['b']\n", got '[\'"b"\']\n'

stdout:
['"b"']
stderr:
toysh11 Multiple words: no outer quotes, inner single quotes

[toysh stdout] Expected "['a b c']\n", got '["\'a", \'b\', "c\'"]\n'

stdout:
["'a", 'b', "c'"]
stderr:
brush11 Multiple words: no outer quotes, inner single quotes

[brush stdout] Expected "['a b c']\n", got "['a', 'b', 'c']\n"

stdout:
['a', 'b', 'c']
stderr:
toysh12 Multiple words: no outer quotes, inner double quotes

[toysh stdout] Expected "['a b c']\n", got '[\'"a\', \'b\', \'c"\']\n'

stdout:
['"a', 'b', 'c"']
stderr:
brush12 Multiple words: no outer quotes, inner double quotes

[brush stdout] Expected "['a b c']\n", got "['a', 'b', 'c']\n"

stdout:
['a', 'b', 'c']
stderr:
toysh14 Multiple words: outer double quotes, inner double quotes

[toysh stdout] Expected "['a b c']\n", got '[\'"a b c"\']\n'

stdout:
['"a b c"']
stderr:
brush15 Multiple words: outer double quotes, inner single quotes

[brush stdout] Expected '["\'a b c\'"]\n', got "['a b c']\n"

stdout:
['a b c']
stderr:
toysh16 Mixed inner quotes

[toysh stdout] Expected "['a b', 'c']\n", got '[\'"a\', \'b"\', \'c\']\n'

stdout:
['"a', 'b"', 'c']
stderr:
brush16 Mixed inner quotes

[brush stdout] Expected "['a b', 'c']\n", got "['a', 'b', 'c']\n"

stdout:
['a', 'b', 'c']
stderr:
toysh17 Mixed inner quotes with outer quotes

[toysh stdout] Expected "['a b c']\n", got '[\'"a b" c\']\n'

stdout:
['"a b" c']
stderr:
toysh18 part_value tree with multiple words

[toysh stdout] Expected "['1 2', '3 45', '6 7']\n", got '[\'${a:-"1\', \'2"\', \'"3\', \'4"5 6 7}\']\n'

stdout:
['${a:-"1', '2"', '"3', '4"5 6 7}']
stderr:
brush18 part_value tree with multiple words

[brush stdout] Expected "['1 2', '3 45', '6 7']\n", got "['1', '2', '3', '45', '6', '7']\n"

stdout:
['1', '2', '3', '45', '6', '7']
stderr:
toysh19 part_value tree on RHS

[toysh stdout] Expected "['1 2 3 45 6 7']\n", got '[\'${a:-"1 2" "3 4"5 6 7}\']\n'

stdout:
['${a:-"1 2" "3 4"5 6 7}']
stderr:
toysh20 Var with multiple words: no quotes

[toysh stdout] Expected "['a', 'b', 'c']\n", got "['$var']\n"

stdout:
['$var']
stderr:
toysh21 Multiple words: no outer quotes, inner single quotes

[toysh stdout] Expected "['$var']\n", got '["\'$var\'"]\n'

stdout:
["'$var'"]
stderr:
toysh22 Multiple words: no outer quotes, inner double quotes

[toysh stdout] Expected "['a b c']\n", got '[\'"$var"\']\n'

stdout:
['"$var"']
stderr:
brush22 Multiple words: no outer quotes, inner double quotes

[brush stdout] Expected "['a b c']\n", got "['a', 'b', 'c']\n"

stdout:
['a', 'b', 'c']
stderr:
toysh23 Multiple words: outer double quotes, no inner quotes

[toysh stdout] Expected "['a b c']\n", got "['$var']\n"

stdout:
['$var']
stderr:
toysh24 Multiple words: outer double quotes, inner double quotes

[toysh stdout] Expected "['a b c']\n", got '[\'"$var"\']\n'

stdout:
['"$var"']
stderr:
toysh25 Multiple words: outer double quotes, inner single quotes

[toysh stdout] Expected '["\'a b c\'"]\n', got '["\'$var\'"]\n'

stdout:
["'$var'"]
stderr:
sush25 Multiple words: outer double quotes, inner single quotes

[sush stdout] Expected '["\'a b c\'"]\n', got '["\'$var\'"]\n'

stdout:
["'$var'"]
stderr:
brush25 Multiple words: outer double quotes, inner single quotes

[brush stdout] Expected '["\'a b c\'"]\n', got "['$var']\n"

stdout:
['$var']
stderr:
toysh26 No outer quotes, Multiple internal quotes

[toysh stdout] Expected "['Aa', 'b', 'c', ' a b cD', 'E', 'F']\n", got '[\'A$var\', \'"\', \'$var"D\', \'E\', \'F\']\n'

stdout:
['A$var', '"', '$var"D', 'E', 'F']
stderr:
brush26 No outer quotes, Multiple internal quotes

[brush stdout] Expected "['Aa', 'b', 'c', ' a b cD', 'E', 'F']\n", got "['Aa', 'b', 'c', 'a', 'b', 'cD', 'E', 'F']\n"

stdout:
['Aa', 'b', 'c', 'a', 'b', 'cD', 'E', 'F']
stderr:
brush29 The string to strip is space sensitive

[brush stdout] Expected "['a b ', 'a b c d']\n", got "['a b ', 'a b ']\n"

stdout:
['a b ', 'a b ']
stderr:
toysh30 The string to strip can be single quoted, outer is unquoted

[toysh stdout] Expected "['a', 'b', 'a', 'b', 'c', 'd']\n", got "['a', 'b', 'c', 'd', 'a', 'b', 'c', 'd']\n"

stdout:
['a', 'b', 'c', 'd', 'a', 'b', 'c', 'd']
stderr:
mksh31 Syntax error for single quote in double quote

stdout:
stderr: 
mksh: <stdin>[3]: no closing quote
ksh31 Syntax error for single quote in double quote

[ksh status] Expected 2, got 1

stdout:
stderr: 
E: ksh: <stdin>[3]: no closing quote
sush31 Syntax error for single quote in double quote

[sush stdout] Expected u'', got '["\'a b c "]\n'
[sush status] Expected 2, got 0

stdout:
["'a b c "]
stderr:
toysh32 "${undef-'c d'}" and "${foo%'c d'}" are parsed differently

[toysh stdout] Expected '["\'c d\'", "\'c d\'"]\n[\'c d\', \'c d\']\n---\n[\'a b \', \'a b c d\']\n[\'a b zzz\', \'a b c d\']\n[\'a b zzz\', \'a b c d\']\n' Got '["\'c d\'", "\'c d\'"]\n["\'c", "d\'", "\'c", "d\'"]\n---\n[\'a b c d\', \'a b c d\']\n'
[toysh status] Expected 0, got 2

stdout:
["'c d'", "'c  d'"]
["'c", "d'", "'c", "d'"]
---
['a b c d', 'a b c d']
stderr:
main: line 9: sh: syntax error: (
brush32 "${undef-'c d'}" and "${foo%'c d'}" are parsed differently

[brush stdout] Expected '["\'c d\'", "\'c d\'"]\n[\'c d\', \'c d\']\n---\n[\'a b \', \'a b c d\']\n[\'a b zzz\', \'a b c d\']\n[\'a b zzz\', \'a b c d\']\n' Got "['c d', 'c d']\n['c', 'd', 'c', 'd']\n---\n['a b ', 'a b c d']\n['a b zzz', 'a b c d']\n['a b zzz', 'a b c d']\n"

stdout:
['c d', 'c  d']
['c', 'd', 'c', 'd']
---
['a b ', 'a b c d']
['a b zzz', 'a b c d']
['a b zzz', 'a b c d']
stderr:
toysh33 $'' allowed within VarSub arguments

[toysh stdout] Expected 'a\na\n', got 'abc\nabc\n'

stdout:
abc
abc
stderr:
toysh34 # operator with single quoted arg (dash/ash and bash/mksh disagree, reported by Crestwave)

[toysh stdout] Expected "--\n--\n-'a'-\n-'a'-\n", got '-a-\n-a-\n\n\n'

stdout:
-a-
-a-


stderr:
toysh35 / operator with single quoted arg (causes syntax error in regex in OSH, reported by Crestwave)

[toysh stdout] Expected "no plus or minus ''''\nno plus or minus ''''\n" Got "no plus or minus ++--''++--''\nno plus or minus ++--''++--''\n"

stdout:
no plus or minus ++--''++--''
no plus or minus ++--''++--''
stderr:
toysh36 single quotes work inside character classes

[toysh stdout] Expected 'a---b\n', got 'a[[[---]]]b\n'

stdout:
a[[[---]]]b
stderr:
sush36 single quotes work inside character classes

[sush stdout] Expected 'a---b\n', got 'a[[[---]]]b\n'

stdout:
a[[[---]]]b
stderr:
brush36 single quotes work inside character classes

[brush stdout] Expected 'a---b\n', got ''
[brush status] Expected 0, got 1

stdout:
stderr: 
ERROR error: invalid regex: Parsing error at position 14: Invalid character class; expression: '(?ms)[\\\[\]\]'
toysh37 comparison: :- operator with single quoted arg

[toysh stdout] Expected "a\n'a'\n", got "'a'\n'a'\n"

stdout:
'a'
'a'
stderr:
brush37 comparison: :- operator with single quoted arg

[brush stdout] Expected "a\n'a'\n", got 'a\na\n'

stdout:
a
a
stderr:
bash38 Right Brace as argument (similar to #702)

stdout:
}
}
'}'
}
stderr:
toysh38 Right Brace as argument (similar to #702)

[toysh stdout] Expected "}\n}\n''}\n}\n", got '}\n}\n\'\'}\n"}\n'

stdout:
}
}
''}
"}
stderr:
sush38 Right Brace as argument (similar to #702)

[sush stdout] Expected "}\n}\n''}\n}\n", got "}\n}\n'}'\n}\n"

stdout:
}
}
'}'
}
stderr:
brush38 Right Brace as argument (similar to #702)

[brush stdout] Expected "}\n}\n''}\n}\n", got '}\n}\n}\n}\n'

stdout:
}
}
}
}
stderr: