1 #![cfg(feature = "raw_os_str")]
2
3 use os_str_bytes::RawOsStr;
4
5 mod raw_common;
6 use raw_common::RAW_WTF8_STRING;
7
test(result: &str, string: &RawOsStr)8 fn test(result: &str, string: &RawOsStr) {
9 assert_eq!(format!("RawOsStr({})", result), format!("{:?}", string));
10 assert_eq!(
11 format!("RawOsString({})", result),
12 format!("{:?}", string.to_owned()),
13 );
14 }
15
16 #[test]
test_empty()17 fn test_empty() {
18 test("\"\"", RawOsStr::from_str(""));
19 }
20
21 #[test]
test_wft8()22 fn test_wft8() {
23 let wchar = if cfg!(unix) {
24 "\\xED\\xA0\\xBD"
25 } else {
26 "\\u{D83D}"
27 };
28 test(&format!("\"foo{}\u{1F4A9}bar\"", wchar), RAW_WTF8_STRING);
29 }
30
31 #[test]
test_quote()32 fn test_quote() {
33 test("\"foo\\\"bar\"", RawOsStr::from_str("foo\"bar"));
34 }
35