Files

35 lines
697 B
Rust

#![cfg(feature = "raw_os_str")]
use os_str_bytes::RawOsStr;
mod raw_common;
use raw_common::RAW_WTF8_STRING;
fn test(result: &str, string: &RawOsStr) {
assert_eq!(format!("RawOsStr({})", result), format!("{:?}", string));
assert_eq!(
format!("RawOsString({})", result),
format!("{:?}", string.to_owned()),
);
}
#[test]
fn test_empty() {
test("\"\"", RawOsStr::from_str(""));
}
#[test]
fn test_wft8() {
let wchar = if cfg!(unix) {
"\\xED\\xA0\\xBD"
} else {
"\\u{D83D}"
};
test(&format!("\"foo{}\u{1F4A9}bar\"", wchar), RAW_WTF8_STRING);
}
#[test]
fn test_quote() {
test("\"foo\\\"bar\"", RawOsStr::from_str("foo\"bar"));
}