Use `as_os_str` to compare exact paths

This commit is contained in:
Chris Denton 2022-03-05 17:58:08 +00:00
parent e8b7371a23
commit 0421af9a46
No known key found for this signature in database
GPG Key ID: 713472F2F45627DE
1 changed files with 10 additions and 7 deletions

View File

@ -1710,15 +1710,18 @@ fn test_unix_absolute() {
let relative = "a/b";
let mut expected = crate::env::current_dir().unwrap();
expected.push(relative);
assert_eq!(absolute(relative).unwrap(), expected);
assert_eq!(absolute(relative).unwrap().as_os_str(), expected.as_os_str());
// Test how components are collected.
assert_eq!(absolute("/a/b/c").unwrap(), Path::new("/a/b/c"));
assert_eq!(absolute("/a//b/c").unwrap(), Path::new("/a/b/c"));
assert_eq!(absolute("//a/b/c").unwrap(), Path::new("//a/b/c"));
assert_eq!(absolute("///a/b/c").unwrap(), Path::new("/a/b/c"));
assert_eq!(absolute("/a/b/c/").unwrap(), Path::new("/a/b/c/"));
assert_eq!(absolute("/a/./b/../c/.././..").unwrap(), Path::new("/a/b/../c/../.."));
assert_eq!(absolute("/a/b/c").unwrap().as_os_str(), Path::new("/a/b/c").as_os_str());
assert_eq!(absolute("/a//b/c").unwrap().as_os_str(), Path::new("/a/b/c").as_os_str());
assert_eq!(absolute("//a/b/c").unwrap().as_os_str(), Path::new("//a/b/c").as_os_str());
assert_eq!(absolute("///a/b/c").unwrap().as_os_str(), Path::new("/a/b/c").as_os_str());
assert_eq!(absolute("/a/b/c/").unwrap().as_os_str(), Path::new("/a/b/c/").as_os_str());
assert_eq!(
absolute("/a/./b/../c/.././..").unwrap().as_os_str(),
Path::new("/a/b/../c/../..").as_os_str()
);
// Test leading `.` and `..` components
let curdir = crate::env::current_dir().unwrap();