MCPcopy Create free account
hub / github.com/apache/fory / test_utf16

Function test_utf16

rust/fory-core/src/util/string_util.rs:1048–1074  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1046
1047 #[test]
1048 fn test_utf16() {
1049 let samples = [
1050 "hello",
1051 "rust语言",
1052 "你好,世界",
1053 "emoji 😀😃😄😁",
1054 "混合文字 + emoji 🐍💻🦀",
1055 ];
1056 for s in samples {
1057 let utf16: Vec<u16> = s.encode_utf16().collect();
1058 let bytes_len = utf16.len() * 2;
1059
1060 let mut buffer = vec![];
1061 let mut writer = Writer::from_buffer(&mut buffer);
1062 write_utf16_standard(&mut writer, &utf16);
1063 write_utf16_standard(&mut writer, &utf16);
1064
1065 let mut buffer = vec![];
1066 let mut writer = Writer::from_buffer(&mut buffer);
1067 write_utf16_standard(&mut writer, &utf16);
1068 write_utf16_standard(&mut writer, &utf16);
1069 let bytes = &*writer.dump();
1070 let mut reader = Reader::new(bytes);
1071 assert_eq!(read_utf16_standard(&mut reader, bytes_len).unwrap(), s);
1072 assert_eq!(read_utf16_standard(&mut reader, bytes_len).unwrap(), s);
1073 }
1074 }
1075 }
1076}

Callers

nothing calls this directly

Calls 3

write_utf16_standardFunction · 0.85
lenMethod · 0.80
dumpMethod · 0.45

Tested by

no test coverage detected