Results for serialize.test.sh

statusbashmkshzshashosh
pass 64307
ok 43423
N-I 00180
BUG 03200
total1010101010
casebashmkshzshashoshdescription
0pass ok ok N-I pass printf %q newline
detailsdetailsdetails
1ok pass ok N-I pass printf %q spaces
detailsdetailsdetails
2pass BUG pass N-I ok printf %q quotes
detailsdetailsdetails
3pass BUG pass N-I ok printf %q unprintable
detailsdetailsdetails
4pass pass pass N-I ok printf %q unicode
detailsdetails
5ok BUG ok N-I pass printf %q invalid unicode
detailsdetailsdetailsdetails
6pass pass BUG ok pass set
detailsdetails
7ok ok BUG N-I pass declare
detailsdetailsdetailsdetails
8pass ok N-I N-I pass ${var@Q}
detailsdetailsdetails
9ok pass ok ok pass xtrace
detailsdetailsdetails
20 passed, 16 OK, 9 not implemented, 5 BUG, 0 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

mksh0 printf %q newline

stdout:
'one'$'\n''two'
roundtrip-ok
stderr:
zsh0 printf %q newline

stdout:
one$'\n'two
roundtrip-ok
stderr:
ash0 printf %q newline

stdout:
stderr: 
bash1 printf %q spaces

stdout:
one\ two
stderr:
zsh1 printf %q spaces

stdout:
one\ two
stderr:
ash1 printf %q spaces

stdout:
stderr: 
mksh2 printf %q quotes

stdout:
''\''"'
roundtrip-ok
stderr:
ash2 printf %q quotes

stdout:
stderr: 
osh2 printf %q quotes

stdout:
$'\'"'
roundtrip-ok
stderr:
mksh3 printf %q unprintable

stdout:
''$'\377'
stderr:
ash3 printf %q unprintable

stdout:
stderr: 
osh3 printf %q unprintable

stdout:
$'\xff'
stderr:
ash4 printf %q unicode

stdout:
stderr: 
osh4 printf %q unicode

stdout:
'μ'
stderr:
bash5 printf %q invalid unicode

stdout:
$'\316'
$'\316μ'
$'μ\316'
$'\316a'
$'a\316'
stderr:
mksh5 printf %q invalid unicode

stdout:
''$'\316'
''$'\316''μ'
'μ'$'\316'
stderr:
zsh5 printf %q invalid unicode

stdout:
$'\316'
$'\316'μ
μ$'\316'
$'\316'a
a$'\316'
stderr:
ash5 printf %q invalid unicode

stdout:
stderr: 
zsh6 set

stdout:
stderr: 
ash6 set

stdout:
zz='one
stderr:
bash7 declare

stdout:
zz=$'one\ntwo'
declare -- zz="one
two"
stderr:
mksh7 declare

stdout:
typeset zz
typeset zz=$'one\ntwo'
stderr:
zsh7 declare

stdout:
stderr: 
ash7 declare

stdout:
stderr: 
mksh8 ${var@Q}

stdout:
$'one
two μ'
$'one
two μ'
stderr:
zsh8 ${var@Q}

stdout:
stderr: 
ash8 ${var@Q}

stdout:
stderr: 
bash9 xtrace

stdout:
one
two
stderr:
+ echo 'one
two'
zsh9 xtrace

stdout:
one
two
stderr:
+zsh:3> echo 'one
two'
ash9 xtrace

stdout:
one
two
stderr:
+ echo 'one
two'