1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
//! **Assert `process::Command`** - Easy command initialization and assertions. //! //! ```toml //! [dependencies] //! assert_cmd = "0.6" //! ``` //! //! ## Example //! //! Here's a trivial example: //! //! ```rust,ignore //! extern crate assert_cmd; //! //! use std::process::Command; //! use assert_cmd::prelude::*; //! //! fn main() { //! let mut cmd = Command::main_binary().unwrap(); //! cmd.assert().success(); //! } //! ``` //! //! ## Relevant crates //! //! Other crates that might be useful in testing command line programs. //! * [duct][duct] for orchestrating multiple processes. //! * [`assert_fs`][assert_fs] for filesystem fixtures and assertions. //! * [dir-diff][dir-diff] for testing file side-effects. //! * [tempfile][tempfile] for scratchpad directories. //! //! [dir-diff]: https://crates.io/crates/dir-diff //! [tempfile]: https://crates.io/crates/tempfile //! [duct]: https://crates.io/crates/duct //! [assert_fs]: https://crates.io/crates/assert_fs #![warn(missing_docs)] extern crate escargot; extern crate predicates; #[macro_use] extern crate serde; pub mod assert; pub use assert::Assert; pub use assert::OutputAssertExt; pub mod cargo; mod cmd; pub use cmd::*; mod stdin; pub use stdin::*; mod errors; pub use errors::*; /// Extension traits that are useful to have available. pub mod prelude { pub use assert::OutputAssertExt; pub use cargo::CommandCargoExt; pub use cmd::OutputOkExt; pub use stdin::CommandStdInExt; }