Skip to content

Commit 5ed641e

Browse files
committed
test WTF8 encoding corner cases
1 parent 508371a commit 5ed641e

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

tests/run-pass/wtf8.rs

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// ignore-linux: tests Windows-only APIs
2+
// ignore-macos: tests Windows-only APIs
3+
4+
use std::os::windows::ffi::{OsStrExt, OsStringExt};
5+
use std::ffi::{OsStr, OsString};
6+
7+
fn test1() {
8+
let base = "a\té \u{7f}💩\r";
9+
let mut base: Vec<u16> = OsStr::new(base).encode_wide().collect();
10+
base.push(0xD800);
11+
let _res = OsString::from_wide(&base);
12+
}
13+
14+
fn test2() {
15+
let mut base: Vec<u16> = OsStr::new("aé ").encode_wide().collect();
16+
base.push(0xD83D);
17+
let mut _res: Vec<u16> = OsString::from_wide(&base).encode_wide().collect();
18+
}
19+
20+
fn main() {
21+
test1();
22+
test2();
23+
}

0 commit comments

Comments
 (0)