public void WriteSerializedString() { var writer = new BlobBuilder(4); writer.WriteSerializedString(""); writer.WriteSerializedString("a"); writer.WriteSerializedString(null); writer.WriteSerializedString(""); writer.WriteSerializedString("\ud800"); // hi surrogate writer.WriteSerializedString("\udc00"); // lo surrogate writer.WriteSerializedString("\ud800\udc00"); // pair writer.WriteSerializedString("\udc00\ud800"); // lo + hi writer.WriteSerializedString("\u1234"); AssertEx.Equal(new byte[] { 0x00, 0x01, 0x61, 0xff, 0x00, 0x03, 0xED, 0xA0, 0x80, 0x03, 0xED, 0xB0, 0x80, 0x04, 0xF0, 0x90, 0x80, 0x80, 0x06, 0xED, 0xB0, 0x80, 0xED, 0xA0, 0x80, 0x03, 0xE1, 0x88, 0xB4 }, writer.ToArray()); }