mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-07-31 04:57:45 +00:00
commit
f16ce871c6
2 changed files with 42 additions and 3 deletions
|
@ -54,9 +54,21 @@ directory).", NAME, VERSION);
|
||||||
if !matches.free.is_empty() {
|
if !matches.free.is_empty() {
|
||||||
for path in matches.free.iter() {
|
for path in matches.free.iter() {
|
||||||
let p = Path::new(path);
|
let p = Path::new(path);
|
||||||
let d = p.parent().unwrap().to_str();
|
match p.parent() {
|
||||||
if d.is_some() {
|
Some(d) => {
|
||||||
print!("{}", d.unwrap());
|
if d.components().next() == None {
|
||||||
|
print!(".")
|
||||||
|
} else {
|
||||||
|
print!("{}", d.to_string_lossy());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
None => {
|
||||||
|
if p.is_absolute() {
|
||||||
|
print!("/");
|
||||||
|
} else {
|
||||||
|
print!(".");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
print!("{}", separator);
|
print!("{}", separator);
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,3 +23,30 @@ fn test_path_without_trailing_slashes() {
|
||||||
|
|
||||||
assert_eq!(out.trim_right(), "/root/alpha/beta/gamma/delta/epsilon");
|
assert_eq!(out.trim_right(), "/root/alpha/beta/gamma/delta/epsilon");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_root() {
|
||||||
|
let (_, mut ucmd) = testing(UTIL_NAME);
|
||||||
|
let dir = "/";
|
||||||
|
let out = ucmd.arg(dir).run().stdout;
|
||||||
|
|
||||||
|
assert_eq!(out.trim_right(), "/");
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_pwd() {
|
||||||
|
let (_, mut ucmd) = testing(UTIL_NAME);
|
||||||
|
let dir = ".";
|
||||||
|
let out = ucmd.arg(dir).run().stdout;
|
||||||
|
|
||||||
|
assert_eq!(out.trim_right(), ".");
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_empty() {
|
||||||
|
let (_, mut ucmd) = testing(UTIL_NAME);
|
||||||
|
let dir = "";
|
||||||
|
let out = ucmd.arg(dir).run().stdout;
|
||||||
|
|
||||||
|
assert_eq!(out.trim_right(), ".");
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue