mirror of
https://github.com/sharkdp/fd
synced 2024-10-04 14:59:15 +00:00
Add test when running from non-existent directory
When fd is run from a non-existent directory, but a search path is passed in the arguments, it should still run. This tests for that.
This commit is contained in:
parent
cb6295d025
commit
922f127aca
|
@ -185,6 +185,11 @@ impl TestEnv {
|
||||||
self.temp_dir.path().to_path_buf()
|
self.temp_dir.path().to_path_buf()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Get the path of the fd executable.
|
||||||
|
pub fn test_exe(&self) -> &PathBuf {
|
||||||
|
&self.fd_exe
|
||||||
|
}
|
||||||
|
|
||||||
/// Get the root directory of the file system.
|
/// Get the root directory of the file system.
|
||||||
pub fn system_root(&self) -> PathBuf {
|
pub fn system_root(&self) -> PathBuf {
|
||||||
let mut components = self.temp_dir.path().components();
|
let mut components = self.temp_dir.path().components();
|
||||||
|
|
|
@ -2114,3 +2114,25 @@ fn test_strip_cwd_prefix() {
|
||||||
symlink",
|
symlink",
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// When fd is ran from a non-existent working directory, but an existent
|
||||||
|
/// directory is passed in the arguments, it should still run fine
|
||||||
|
#[test]
|
||||||
|
fn test_invalid_cwd() {
|
||||||
|
let te = TestEnv::new(&[], &[]);
|
||||||
|
|
||||||
|
let root = te.test_root().join("foo");
|
||||||
|
fs::create_dir(&root).unwrap();
|
||||||
|
std::env::set_current_dir(&root).unwrap();
|
||||||
|
fs::remove_dir(&root).unwrap();
|
||||||
|
|
||||||
|
let output = std::process::Command::new(&te.test_exe())
|
||||||
|
.arg("query")
|
||||||
|
.arg(te.test_root())
|
||||||
|
.output()
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
|
if !output.status.success() {
|
||||||
|
panic!("{:?}", output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue