blob: 9cbf63efdb9b2b1b87a2d2cb7fa702e62015b4cd [file] [log] [blame]
Zhiyi Zhang8617a792017-01-17 16:45:56 -08001#!/usr/bin/env bash
Davide Pesavento440000d2025-03-25 15:50:12 -04002set -eo pipefail
Zhiyi Zhang8617a792017-01-17 16:45:56 -08003
Davide Pesavento440000d2025-03-25 15:50:12 -04004[[ $JOB_NAME == *code-coverage ]] || exit 0
Zhiyi Zhang8617a792017-01-17 16:45:56 -08005
Davide Pesavento440000d2025-03-25 15:50:12 -04006export FORCE_COLOR=1
7export UV_NO_MANAGED_PYTHON=1
Davide Pesaventocf9ffe42018-01-21 22:21:53 -05008
Davide Pesavento440000d2025-03-25 15:50:12 -04009set -x
10
11# Generate an XML report (Cobertura format) and a detailed HTML report using gcovr
12# Note: trailing slashes are important in the paths below. Do not remove them!
13uvx gcovr@5.2 \
14 --object-directory build \
15 --filter src/ \
16 --exclude-throw-branches \
17 --exclude-unreachable-branches \
18 --cobertura build/coverage.xml \
19 --html-details build/gcovr/ \
20 --print-summary
21
22# Generate a detailed HTML report using lcov
23lcov --quiet \
24 --capture \
25 --directory . \
26 --exclude "$PWD/tests/*" \
27 --no-external \
28 --rc lcov_branch_coverage=1 \
29 --output-file build/coverage.info
30
31genhtml --branch-coverage \
32 --demangle-cpp \
33 --legend \
34 --output-directory build/lcov \
35 --title "ndncert unit tests" \
36 build/coverage.info