Skip to main content

parse_crate_tests

Function parse_crate_tests 

Source
pub fn parse_crate_tests(text: &str) -> CrateTests
Expand description

Read cargo test’s human output and sum its result lines.

The machine format is still unstable, so this reads what every cargo prints: test result: ok. 93 passed; 0 failed; 0 ignored; ..., once per test binary.

use majordomus_cli::web::report::tests::parse_crate_tests;
let t = parse_crate_tests("test result: ok. 93 passed; 0 failed; 2 ignored; 0 measured\n\
                           test result: FAILED. 5 passed; 1 failed; 0 ignored; 0 measured\n");
assert_eq!(t.passed, 98);
assert_eq!(t.failed, 1);
assert_eq!(t.ignored, 2);