Add an integration test for reading from "/dev/stdin" on unix-like systems

This commit is contained in:
Olivier Tilloy
2024-04-08 22:36:14 +02:00
parent 84ad116845
commit e1c319f96b
+16
View File
@@ -206,5 +206,21 @@ fn read_from_stdin() -> Result<(), Box<dyn std::error::Error>> {
.success()
.stdout(predicate::str::is_empty());
#[cfg(unix)]
{
let mut cmd = Command::cargo_bin("diffutils")?;
cmd.arg("-u")
.arg(file1.path())
.arg("/dev/stdin")
.write_stdin("bar\n");
cmd.assert()
.code(predicate::eq(1))
.failure()
.stdout(predicate::eq(format!(
"--- {}\t\n+++ /dev/stdin\t\n@@ -1 +1 @@\n-foo\n+bar\n",
file1.path().to_string_lossy()
)));
}
Ok(())
}