Thanks for give me an excuse to fix up some of my own bugs.
The 15-or-so tests starting with (test-equal #f (string=? "Fuss" fuss")) need to be wrapped with cond-expand to be disabled without full-unicode-strings support.
This line seems to have some non-portable type declaration syntax:
"-(define (translate-space-to-newline str::string)::string"
There are a few instances of #\Space and #\Newline which are portably valid only if #!fold-case is in effect.
" (test-equal 6 (length str))"
Should be (test-equal 6 (string-length str))
The string->utf16 tests assume that the declared feature big-endian or little-endian is consistent with the specification when it refers to an "implementation-dependent endianness". While that relationship may seem obvious, perhaps it should be made explicit in the specification.