Results for unicode.test.sh

statusoshosh-cpp
pass 74
FAIL 03
total77
caseoshosh-cppdescription
0pass pass OSH source code doesn't have to be valid Unicode (like other shells)
1pass pass Unicode escapes \u03bc \U000003bc in $'', echo -e, printf
2pass FAIL Max code point U+10ffff can escaped with $'' printf echo -e
details
3pass pass $'' does NOT check that 0x110000 is too big at parse time
4pass pass $'' does not check for surrogate range at parse time
5pass FAIL printf / echo -e do NOT check max code point at runtime
details
6pass FAIL printf / echo -e do NOT check surrogates at runtime
details
11 passed, 0 OK, 0 not implemented, 0 BUG, 0 failed, 0 timeouts, 0 cases skipped

Details on runs that didn't PASS

osh-cpp2 Max code point U+10ffff can escaped with $'' printf echo -e

[osh-cpp stdout] Expected "'\\xf4\\x8f\\xbf\\xbf'\n'\\xf4\\x8f\\xbf\\xbf'\n'\\xf4\\x8f\\xbf\\xbf'\n" Got "'\\xf4\\x8f\\xbf\\xbf'\n"
[osh-cpp status] Expected 0, got -6

stdout:
'\xf4\x8f\xbf\xbf'
stderr:
terminate called after throwing an instance of 'IndexError*'
timeout: the monitored command dumped core
osh-cpp5 printf / echo -e do NOT check max code point at runtime

[osh-cpp stdout] Expected "status=0\n'\\xf4\\x90\\x80\\x80'\nstatus=0\n'\\xf4\\x90\\x80\\x80'\n" Got ''
[osh-cpp status] Expected 0, got -6

stdout:
stderr: 
terminate called after throwing an instance of 'IndexError*'
timeout: the monitored command dumped core
osh-cpp6 printf / echo -e do NOT check surrogates at runtime

[osh-cpp stdout] Expected "status=0\n'\\xed\\xb0\\x80'\nstatus=0\n'\\xed\\xb0\\x80'\nstatus=0\n'\\xed\\xb0\\x80'\nstatus=0\n'\\xed\\xb0\\x80'\n" Got ''
[osh-cpp status] Expected 0, got -6

stdout:
stderr: 
terminate called after throwing an instance of 'IndexError*'
timeout: the monitored command dumped core