in src/path_rewriting.rs [1712:1751]
fn test_rewrite_paths_filter_lines_and_branches() {
let mut result_map: CovResultMap = FxHashMap::default();
result_map.insert("test/java/skip.java".to_string(), skipping_result!());
let results = rewrite_paths(
result_map,
None,
Some(&canonicalize_path("test").unwrap()),
None,
true,
&[""; 0],
&[""; 0],
None,
crate::FileFilter::new(
Some(regex::Regex::new("excluded line").unwrap()),
Some(regex::Regex::new("skip line start").unwrap()),
Some(regex::Regex::new("skip line end").unwrap()),
Some(regex::Regex::new("excluded branch").unwrap()),
Some(regex::Regex::new("skip branch start").unwrap()),
Some(regex::Regex::new("skip branch end").unwrap()),
),
);
let mut count = 0;
for (_, _, result) in results {
count += 1;
for inc in [1, 2, 3, 5, 8, 9, 10, 11, 12, 13, 14, 15, 16].iter() {
assert!(result.lines.contains_key(inc));
}
for inc in [4, 6, 7, 17, 18, 19, 20].iter() {
assert!(!result.lines.contains_key(inc));
}
for inc in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 16, 17].iter() {
assert!(result.branches.contains_key(inc));
}
for inc in [11, 13, 14, 18, 19, 20].iter() {
assert!(!result.branches.contains_key(inc));
}
}
assert_eq!(count, 1);
}