From: Ian Jackson Date: Mon, 31 May 2021 13:04:39 +0000 (+0100) Subject: childio: t_false test case, test writing X-Git-Tag: otter-0.7.0~202 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=5ea5072750149ca7add42ffca2aee23627518aff;p=otter.git childio: t_false test case, test writing Signed-off-by: Ian Jackson --- diff --git a/src/childio.rs b/src/childio.rs index 3aed0919..35b43bb4 100644 --- a/src/childio.rs +++ b/src/childio.rs @@ -129,7 +129,7 @@ fn t_cat() { #[test] fn t_false() { - let one = | f: &dyn Fn(&mut dyn Write, &mut dyn Read) -> io::Result<()> |{ + let one = | f: &dyn Fn(&mut ChildIo<_>, &mut dyn Read) -> io::Result<()> |{ let c = Command::new("false"); let (mut w, mut r) = run_pair(c, "cat".into()).unwrap(); @@ -144,6 +144,12 @@ fn t_false() { let mut buf = [0;10]; r.read(&mut buf).map(|_|()) }); + + one(&|w, _r|{ + // make sure we lose the race and get EPIPE + w.child.lock().child.wait().unwrap(); + write!(w, "hi") + }); } }