Assert CLI
Test CLI Applications - This crate checks the output of a child process is as expected.
Install
Just add it to your Cargo.toml
:
[]
= "0.5"
Example
Here's a trivial example:
extern crate assert_cli;
Or if you'd rather use the macro, to save you some writing:
extern crate assert_cli;
And here is one that will fail (which also shows execute
which returns a
Result
and can be used instead of unwrap
):
extern crate assert_cli;
If you want to match the program's output exactly, you can use
stdout().is
:
extern crate assert_cli;
... which has the benefit to show a nice, colorful diff in your terminal, like this:
-1337
+92
Tip: Enclose arguments in the assert_cmd!
macro in quotes "
,
if there are special characters, which the macro doesn't accept, e.g.
assert_cmd!(cat "foo.txt")
.
Assert Cli use Environment underneath to deal with environment variables.
More detailed information is available in the documentation. :-)
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.