mirror of
https://github.com/uutils/coreutils.git
synced 2026-06-10 15:48:22 -07:00
fmt: generate an error if the input is a directory
tested by tests/misc/read-errors
This commit is contained in:
@@ -189,6 +189,13 @@ fn process_file(
|
||||
_ => {
|
||||
let f = File::open(file_name)
|
||||
.map_err_context(|| format!("cannot open {} for reading", file_name.quote()))?;
|
||||
if f.metadata()
|
||||
.map_err_context(|| format!("cannot get metadata for {}", file_name.quote()))?
|
||||
.is_dir()
|
||||
{
|
||||
return Err(USimpleError::new(1, "read error".to_string()));
|
||||
}
|
||||
|
||||
Box::new(f) as Box<dyn Read + 'static>
|
||||
}
|
||||
});
|
||||
|
||||
@@ -9,6 +9,11 @@ fn test_invalid_arg() {
|
||||
new_ucmd!().arg("--definitely-invalid").fails().code_is(1);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_invalid_input() {
|
||||
new_ucmd!().arg(".").fails().code_is(1);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_fmt() {
|
||||
new_ucmd!()
|
||||
|
||||
Reference in New Issue
Block a user