Skip to content

Latest commit

 

History

History
63 lines (46 loc) · 2.05 KB

README.md

File metadata and controls

63 lines (46 loc) · 2.05 KB

trycmd

Validate commands en-masse

Documentation License Crates Status

trycmd aims to simplify the process for running a large collection of end-to-end CLI test cases

Example

Here's a trivial example:

#[test]
fn ui() {
    let t = trycmd::TestCases::new();
    t.pass("tests/cmd/*.toml");
}

See the docs for more.

Relevant crates

Other crates that might be useful in testing command line programs.

  • assert_cmd for test cases that are pets, rather than cattle
  • escargot for more control over configuring the crate's binary.
  • duct for orchestrating multiple processes.
  • rexpect for testing interactive programs.
  • assert_fs for filesystem fixtures and assertions.
    • or tempfile for scratchpad directories.
  • dir-diff for testing file side-effects.

License

Licensed under either of

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.