fn testMiscInvalidUtf8() !void 766
767
768
769
770
771
772
773
774
775fn testMiscInvalidUtf8() !void {
// codepoint out of bounds
try testError("\xf4\x90\x80\x80", error.Utf8CodepointTooLarge);
try testError("\xf7\xbf\xbf\xbf", error.Utf8CodepointTooLarge);
// surrogate halves
try testValid("\xed\x9f\xbf", 0xd7ff);
try testError("\xed\xa0\x80", error.Utf8EncodesSurrogateHalf);
try testError("\xed\xbf\xbf", error.Utf8EncodesSurrogateHalf);
try testValid("\xee\x80\x80", 0xe000);
}