From cee0678817588fa7d4f2f4ec25ff89631a005d6e Mon Sep 17 00:00:00 2001 From: Philipp Dresselmann Date: Mon, 16 Dec 2024 14:51:36 +0100 Subject: [PATCH 1/2] chore(coverage): Fix llvm-cov branch coverage metrics Without this flag, the generated reports show 0% branch coverage. --- coverage_report.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/coverage_report.sh b/coverage_report.sh index b819c8b..62a86e4 100755 --- a/coverage_report.sh +++ b/coverage_report.sh @@ -21,7 +21,7 @@ main() { open="1" fi - exc cargo llvm-cov --all-features --workspace --doctests + exc cargo llvm-cov --all-features --workspace --doctests --branch exc rm -rf "${OUTPUT_DIR}" exc mkdir -p "${OUTPUT_DIR}" From a3d468610476aa1380124ac16a725e49dfceeebe Mon Sep 17 00:00:00 2001 From: Philipp Dresselmann Date: Mon, 16 Dec 2024 14:52:16 +0100 Subject: [PATCH 2/2] chore(coverage): Fix doctest coverage in the grcov reports The binary path doesn't contain any doctest executables (i.e., rust_out). Coverage reports then don't include doctests, presumably because grcov can't map the profdata references to its respective doctest binary. --- coverage_report.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/coverage_report.sh b/coverage_report.sh index 62a86e4..6f775ae 100755 --- a/coverage_report.sh +++ b/coverage_report.sh @@ -23,6 +23,7 @@ main() { exc cargo llvm-cov --all-features --workspace --doctests --branch + exc cp -rv target/llvm-cov-target/doctestbins target/llvm-cov-target/debug/deps/doctestbins exc rm -rf "${OUTPUT_DIR}" exc mkdir -p "${OUTPUT_DIR}" exc grcov target/llvm-cov-target/ --llvm -s . --branch \