diff --git a/runtime/serde/serde-xml/common/test/aws/smithy/kotlin/runtime/serde/xml/XmlStreamWriterTest.kt b/runtime/serde/serde-xml/common/test/aws/smithy/kotlin/runtime/serde/xml/XmlStreamWriterTest.kt index e4c8f9a38a..33a1a6e423 100644 --- a/runtime/serde/serde-xml/common/test/aws/smithy/kotlin/runtime/serde/xml/XmlStreamWriterTest.kt +++ b/runtime/serde/serde-xml/common/test/aws/smithy/kotlin/runtime/serde/xml/XmlStreamWriterTest.kt @@ -96,6 +96,23 @@ class XmlStreamWriterTest { } } + @Test + fun itHandlesNonAsciiCharacters() { + val tag = "textTest" + val payload = (0..1023).map(Int::toChar).joinToString("") + + val writer = xmlStreamWriter() + writer.startTag(tag) + writer.text(payload) + writer.endTag(tag) + val serialized = writer.bytes + + val reader = xmlStreamReader(serialized) + reader.nextToken() // opening tag + val textToken = reader.nextToken() as XmlToken.Text + assertEquals(payload, textToken.value) + } + /** * The set of EOL characters and their corresponding escaped form are: *