File: calculate-coverage

package info (click to toggle)
firebuild 0.8.6-1
  • links: PTS, VCS
  • area: non-free
  • in suites: forky, sid
  • size: 2,624 kB
  • sloc: cpp: 14,301; ansic: 6,429; python: 2,401; sh: 262; makefile: 40; awk: 33
file content (15 lines) | stat: -rwxr-xr-x 580 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/sh

set -e

find . -name '*.gcno' | grep -v /gcov/ | while read f; do
    mkdir -p gcov/$(dirname $f)
    ln -sf $(realpath $f) gcov/$f
done

lcov -q -c -d . --no-external -o gcov/tmp.info
lcov -q -r gcov/tmp.info -o gcov/coverage-incl-tests.info '*/fbb*' '*/interceptor/gen_*.*'
genhtml -o gcovhtml gcov/coverage-incl-tests.info
lcov -q -r gcov/coverage-incl-tests.info -o gcov/coverage-excl-tests.info '*/test/*.c*'
echo "Line coverage rate, excluding test files:"
lcov --summary gcov/coverage-excl-tests.info 2>&1 | grep '^  lines' | sed 's/  lines.*: \([^%]*\)%.*/\1/'