Expand description
This crate provide some helper functions to capture the stdin/out/err of the current process to help mocking.
In testing, cargo test
capture the stdout/err via std::io::set_output_capture
. We can use the same mechanism to intercept print! and eprint! output. The crate wraps the call in OutputCapture so that you can intercept the output easily.
The crate also implements a pipe
-then-dup
method to intercept stdio. In detail, it creates a pipe and replaces the fd of stdio. You can use PipedStdin to intercept stdin, use PipedStdout for stdout and PipedStderr for stderr.
Re-exports§
pub use output_capture::*;
pub use pipe::*;
Modules§
- output_
capture - Wrapper of
std::io::set_output_capture
- pipe
- Intercept stdio via
pipe
-then-dup
method
Traits§
- Capture
- Common trait to capture stdio and then restore