in src/parser.rs [2041:2085]
fn test_parser_jacoco_xml_inner_classes() {
let mut lines: BTreeMap<u32, u64> = BTreeMap::new();
for i in &[5, 10, 14, 15, 18, 22, 23, 25, 27, 31, 34, 37, 44, 49] {
lines.insert(*i, 0);
}
let mut functions: FunctionMap = FxHashMap::default();
for (name, start, executed) in vec![
("Person$InnerClassForPerson#getSomethingElse", 31, false),
("Person#getSurname", 10, false),
("Person$InnerClassForPerson#<init>", 25, false),
("Person#setSurname", 14, false),
("Person#getAge", 18, false),
(
"Person$InnerClassForPerson$InnerInnerClass#<init>",
34,
false,
),
("Person$InnerClassForPerson#getSomething", 27, false),
("Person#<init>", 5, false),
(
"Person$InnerClassForPerson$InnerInnerClass#everything",
37,
false,
),
("Person#setAge", 22, false),
] {
functions.insert(String::from(name), Function { start, executed });
}
let branches: BTreeMap<u32, Vec<bool>> = BTreeMap::new();
let expected = vec![(
String::from("org/gradle/Person.java"),
CovResult {
lines,
branches,
functions,
},
)];
let f = File::open("./test/jacoco/inner-classes.xml").expect("Failed to open xml file");
let file = BufReader::new(&f);
let results = parse_jacoco_xml_report(file).unwrap();
assert_eq!(results, expected);
}