Results for var-op-bash.test.sh

statusoshosh_.pyosh_.cc
pass 888
ok 555
FAIL 555
total181818
caseoshosh_.pyosh_.ccdescription
0pass pass pass Lower Case with , and ,,
1pass pass pass Upper Case with ^ and ^^
2FAIL FAIL FAIL Case Folding of Unicode Characters
detailsdetailsdetails
3FAIL FAIL FAIL Lower Case with constant string (VERY WEIRD)
detailsdetailsdetails
4FAIL FAIL FAIL Lower Case glob
detailsdetailsdetails
5FAIL FAIL FAIL ${x@u} U l L upper / lower case (bash 5.1 feature)
detailsdetailsdetails
6pass pass pass ${x@Q}
7ok ok ok ${array@Q} and ${array[@]@Q}
detailsdetailsdetails
8pass pass pass ${!prefix@} ${!prefix*} yields sorted array of var names
9pass pass pass ${!prefix@} matches var name (regression)
10pass pass pass ${var@a} for attributes
11pass pass pass ${var@a} error conditions
12ok ok ok undef and @P @Q @a
detailsdetailsdetails
13ok ok ok argv array and @P @Q @a
detailsdetailsdetails
14ok ok ok assoc array and @P @Q @a
detailsdetailsdetails
15ok ok ok ${!var[@]@X}
detailsdetailsdetails
16pass pass pass ${#var@X} is a parse error
17FAIL FAIL FAIL ${!A@a} and ${!A[@]@a}
detailsdetailsdetails
24 passed, 15 OK, 0 not implemented, 0 BUG, 15 failed, 0 timeouts, 0 cases skipped
5 failed under osh

Details on runs that didn't PASS

osh2 Case Folding of Unicode Characters

[osh stdout] Expected 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\xa0\xc3\x88\nL \xc3\xa0\xc3\xa8\nu \xc3\x81\xc3\xa9\nU \xc3\x81\xc3\x89\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n', got 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\x80\xc3\x88\nL \xc3\x80\xc3\x88\nu \xc3\xa1\xc3\xa9\nU \xc3\xa1\xc3\xa9\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n'

stdout:
u ÀÈ
U ÀÈ
l ÀÈ
L ÀÈ
u áé
U áé
l áé
L áé
stderr:
osh_.py2 Case Folding of Unicode Characters

[osh_.py stdout] Expected 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\xa0\xc3\x88\nL \xc3\xa0\xc3\xa8\nu \xc3\x81\xc3\xa9\nU \xc3\x81\xc3\x89\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n', got 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\x80\xc3\x88\nL \xc3\x80\xc3\x88\nu \xc3\xa1\xc3\xa9\nU \xc3\xa1\xc3\xa9\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n'

stdout:
u ÀÈ
U ÀÈ
l ÀÈ
L ÀÈ
u áé
U áé
l áé
L áé
stderr:
osh_.cc2 Case Folding of Unicode Characters

[osh_.cc stdout] Expected 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\xa0\xc3\x88\nL \xc3\xa0\xc3\xa8\nu \xc3\x81\xc3\xa9\nU \xc3\x81\xc3\x89\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n', got 'u \xc3\x80\xc3\x88\nU \xc3\x80\xc3\x88\nl \xc3\x80\xc3\x88\nL \xc3\x80\xc3\x88\nu \xc3\xa1\xc3\xa9\nU \xc3\xa1\xc3\xa9\nl \xc3\xa1\xc3\xa9\nL \xc3\xa1\xc3\xa9\n'

stdout:
u ÀÈ
U ÀÈ
l ÀÈ
L ÀÈ
u áé
U áé
l áé
L áé
stderr:
osh3 Lower Case with constant string (VERY WEIRD)

[osh stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
  echo ${x,A}
          ^
[ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument
osh_.py3 Lower Case with constant string (VERY WEIRD)

[osh_.py stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
  echo ${x,A}
          ^
[ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument
osh_.cc3 Lower Case with constant string (VERY WEIRD)

[osh_.cc stdout] Expected 'aAA ABC DEF\naaa aBC DEF\n', got ''
[osh_.cc status] Expected 0, got 1

stdout:
stderr: 
  echo ${x,A}
  ^~~~
[ stdin ]:2: fatal: Id.VOp1_Comma can't have an argument
osh4 Lower Case glob

[osh stdout] Expected 'ABC DEF\nABC deF\n', got ''
[osh status] Expected 0, got 1

stdout:
stderr: 
FATAL: NotImplementedError('Id.VOp1_Comma',)
osh_.py4 Lower Case glob

[osh_.py stdout] Expected 'ABC DEF\nABC deF\n', got ''
[osh_.py status] Expected 0, got 1

stdout:
stderr: 
osh fatal error: Id.VOp1_Comma
osh_.cc4 Lower Case glob

[osh_.cc stdout] Expected 'ABC DEF\nABC deF\n', got ''
[osh_.cc status] Expected 0, got -6

stdout:
stderr: 
terminate called after throwing an instance of 'NotImplementedError*'
timeout: the monitored command dumped core
osh5 ${x@u} U l L upper / lower case (bash 5.1 feature)

[osh status] Expected 0, got 2

stdout:
stderr: 
  echo "${x@u}"
           ^
[ stdin ]:2: Unexpected token in ${} (VOp3)
osh_.py5 ${x@u} U l L upper / lower case (bash 5.1 feature)

[osh_.py status] Expected 0, got 2

stdout:
stderr: 
  echo "${x@u}"
           ^
[ stdin ]:2: Unexpected token in ${} (VOp3)
osh_.cc5 ${x@u} U l L upper / lower case (bash 5.1 feature)

[osh_.cc status] Expected 0, got 2

stdout:
stderr: 
  echo "${x@u}"
           ^
[ stdin ]:2: Unexpected token in ${} (VOp3)
osh7 ${array@Q} and ${array[@]@Q}

stdout:
x $'y\\nz'
x
stderr:
  echo ${array@Q}
       ^~
[ stdin ]:6: fatal: Array 'array' can't be referred to as a scalar (without @ or *)
osh_.py7 ${array@Q} and ${array[@]@Q}

stdout:
x $'y\\nz'
x
stderr:
  echo ${array@Q}
       ^~
[ stdin ]:6: fatal: Array 'array' can't be referred to as a scalar (without @ or *)
osh_.cc7 ${array@Q} and ${array[@]@Q}

stdout:
x $'y\\nz'
x
stderr:
  echo ${array@Q}
  ^~~~
[ stdin ]:6: fatal: Array 'array' can't be referred to as a scalar (without @ or *)
osh12 undef and @P @Q @a

stdout:
status=0
''
status=0

status=0
stderr:
osh_.py12 undef and @P @Q @a

stdout:
status=0
''
status=0

status=0
stderr:
osh_.cc12 undef and @P @Q @a

stdout:
status=0
''
status=0

status=0
stderr:
osh13 argv array and @P @Q @a

stdout:
status=1
a $'b\\nc'
status=0
a
status=0
stderr:
  echo ${@@P}
  ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh_.py13 argv array and @P @Q @a

stdout:
status=1
a $'b\\nc'
status=0
a
status=0
stderr:
  echo ${@@P}
  ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh_.cc13 argv array and @P @Q @a

stdout:
status=1
a $'b\\nc'
status=0
a
status=0
stderr:
  echo ${@@P}
  ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh14 assoc array and @P @Q @a

stdout:
status=1
status=1
A - A
status=0
stderr:
  declare -A A=(["x"]="y"); echo ${A@P} - ${A[@]@P}
                                 ^~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
  declare -A A=(["x"]="y"); echo ${A@Q} - ${A[@]@Q}
                                 ^~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
osh_.py14 assoc array and @P @Q @a

stdout:
status=1
status=1
A - A
status=0
stderr:
  declare -A A=(["x"]="y"); echo ${A@P} - ${A[@]@P}
                                 ^~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
  declare -A A=(["x"]="y"); echo ${A@Q} - ${A[@]@Q}
                                 ^~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
osh_.cc14 assoc array and @P @Q @a

stdout:
status=1
status=1
A - A
status=0
stderr:
  declare -A A=(["x"]="y"); echo ${A@P} - ${A[@]@P}
                            ^~~~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
  declare -A A=(["x"]="y"); echo ${A@Q} - ${A[@]@Q}
                            ^~~~
[ -c flag ]:1: fatal: Array 'A' can't be referred to as a scalar (without @ or *)
osh15 ${!var[@]@X}

stdout:
fail
'x y'
a
stderr:
  declare -A A=(["x"]="y"); echo ${!A[@]@P}
                            ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh_.py15 ${!var[@]@X}

stdout:
fail
'x y'
a
stderr:
  declare -A A=(["x"]="y"); echo ${!A[@]@P}
                            ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh_.cc15 ${!var[@]@X}

stdout:
fail
'x y'
a
stderr:
  declare -A A=(["x"]="y"); echo ${!A[@]@P}
                            ^~~~
[ -c flag ]:1: fatal: Can't use @P on value.MaybeStrArray
osh17 ${!A@a} and ${!A[@]@a}

[osh stdout] Expected 'x=\nx=\n', got 'x=a\n'
[osh status] Expected 0, got 1

stdout:
x=a
stderr:
  echo x=${!A@a}
  ^~~~
[ stdin ]:3: fatal: Indirect expansion of assoc array
osh_.py17 ${!A@a} and ${!A[@]@a}

[osh_.py stdout] Expected 'x=\nx=\n', got 'x=a\n'
[osh_.py status] Expected 0, got 1

stdout:
x=a
stderr:
  echo x=${!A@a}
  ^~~~
[ stdin ]:3: fatal: Indirect expansion of assoc array
osh_.cc17 ${!A@a} and ${!A[@]@a}

[osh_.cc stdout] Expected 'x=\nx=\n', got 'x=a\n'
[osh_.cc status] Expected 0, got 1

stdout:
x=a
stderr:
  echo x=${!A@a}
  ^~~~
[ stdin ]:3: fatal: Indirect expansion of assoc array