Results for dbracket.test.sh

casebashmkshoshosh_ALTdescription
0pass pass pass pass [[ glob matching, [[ has no glob expansion
1pass pass pass pass [[ glob matching with escapes
2pass pass pass pass equality
3pass pass pass pass [[ glob matching with unquoted var
4pass N-I pass pass [[ regex matching
details
5pass N-I pass pass [[ regex syntax error
details
6pass pass pass pass [[ has no word splitting
7pass pass pass pass [[ has quote joining
8pass pass pass pass [[ empty string is false
9pass pass pass pass && chain
10pass pass pass pass || chain
11pass pass pass pass [[ compound expressions
12pass pass pass pass precedence of && and || inside [[
13pass pass pass pass precedence of && and || in a command context
14pass N-I pass pass Octal literals with -eq
details
15pass N-I pass pass Hex literals with -eq
details
16pass pass pass pass > on strings
17pass pass pass pass != on strings
18pass pass pass pass -eq on strings
19pass pass pass pass [[ compare with literal -f (compare with test-builtin.test.sh)
20pass ok pass pass [[ with op variable (compare with test-builtin.test.sh)
details
21pass pass pass pass [[ with unquoted empty var (compare with test-builtin.test.sh)
22pass pass pass pass [[ at runtime doesn't work
23pass pass pass pass [[ with env prefix doesn't work
24pass pass pass pass [[ over multiple lines is OK
25pass pass pass pass Argument that looks like a command word operator
26pass ok pass pass Argument that looks like a real operator
details
27pass pass pass pass Does user array equal "$@" ?
28pass pass pass pass Array coerces to string
29pass pass pass pass Quotes don't matter in comparison
30pass pass N-I N-I -eq does dynamic arithmetic parsing (not supported in OSH)
detailsdetails
31pass pass pass pass -eq coercion produces weird results
32pass pass pass pass [[ '(' ]] is treated as literal
33pass ok pass pass [[ '(' foo ]] is syntax error
details
34pass pass pass pass empty ! is treated as literal
35pass ok pass pass [[ -z ]] is syntax error
details
36pass pass pass pass [[ -z '>' ]]
37pass ok pass pass [[ -z '>' a ]] is syntax error
details
38pass pass pass pass test whether ']]' is empty
39pass ok pass pass [[ ]] is syntax error
details
40pass ok pass pass [[ && ]] is syntax error
details

151 passed, 7 ok, 6 known unimplemented, 0 known bugs, 0 failed, 0 skipped

Details on runs that didn't PASS

mksh4 [[ regex matching

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[2]: syntax error: '=~' unexpected operator/operand
mksh5 [[ regex syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: '=~' unexpected operator/operand
mksh14 Octal literals with -eq

stdout:
false
stderr:
_tmp/spec-bin/mksh: <stdin>[1]: shopt: not found
mksh15 Hex literals with -eq

stdout:
false
stderr:
_tmp/spec-bin/mksh: <stdin>[1]: shopt: not found
_tmp/spec-bin/mksh: <stdin>[4]: 0x0f: bad number '0x0f'
mksh20 [[ with op variable (compare with test-builtin.test.sh)

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[2]: syntax error: '$op' unexpected operator/operand
mksh26 Argument that looks like a real operator

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: '-f' missing argument
osh30 -eq does dynamic arithmetic parsing (not supported in OSH)

stdout:
stderr: 
  [[ 1+2 -eq 3 ]] && echo true
     ^
[ stdin ]:1: fatal: Invalid integer constant '1+2'
osh_ALT30 -eq does dynamic arithmetic parsing (not supported in OSH)

stdout:
stderr: 
  [[ 1+2 -eq 3 ]] && echo true
     ^
[ stdin ]:1: fatal: Invalid integer constant '1+2'
mksh33 [[ '(' foo ]] is syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: 'foo' unexpected operator/operand
mksh35 [[ -z ]] is syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[2]: syntax error: 'echo' unexpected operator/operand
mksh37 [[ -z '>' a ]] is syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: '--' unexpected operator/operand
mksh39 [[ ]] is syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: 'newline' unexpected operator/operand
mksh40 [[ && ]] is syntax error

stdout:
stderr: 
_tmp/spec-bin/mksh: <stdin>[1]: syntax error: '&&' expression expected