blob: 0dbb03a51f5d899ad32a6762a19732e4a6d72db5 [file] [log] [blame]
Alexander Afanasyev4d4e7252014-10-25 12:21:53 -07001#!/usr/bin/env bash
Alexander Afanasyev4d4e7252014-10-25 12:21:53 -07002set -e
3
Alexander Afanasyevf22ebaf2015-12-17 21:23:05 -08004JDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
5source "$JDIR"/util.sh
Alexander Afanasyev4d4e7252014-10-25 12:21:53 -07006
Davide Pesaventoe0edc4c2016-09-13 18:29:52 +00007set -x
8
Davide Pesavento231ddd72016-09-02 22:20:00 +00009if [[ $JOB_NAME == *"code-coverage" ]]; then
Davide Pesavento0a5e5e22016-09-13 18:29:33 +000010 gcovr --object-directory=build \
11 --output=build/coverage.xml \
Alexander Afanasyev465056e2016-12-29 16:43:01 -080012 --exclude="$PWD/(tests|websocketpp)" \
Davide Pesavento231ddd72016-09-02 22:20:00 +000013 --root=. \
Davide Pesavento0a5e5e22016-09-13 18:29:33 +000014 --xml
Davide Pesavento8d61c032017-04-29 20:06:33 -040015
16 # Generate also a detailed HTML output, but using lcov (better results)
17 lcov --quiet \
18 --capture \
19 --directory . \
20 --no-external \
21 --rc lcov_branch_coverage=1 \
Davide Pesavento221f53b2017-06-04 17:17:31 -040022 --output-file build/coverage-with-tests-and-websocketpp.info
23
24 lcov --quiet \
25 --remove build/coverage-with-tests-and-websocketpp.info "$PWD/websocketpp/*" \
26 --rc lcov_branch_coverage=1 \
Davide Pesavento8d61c032017-04-29 20:06:33 -040027 --output-file build/coverage-with-tests.info
28
29 lcov --quiet \
30 --remove build/coverage-with-tests.info "$PWD/tests/*" \
31 --rc lcov_branch_coverage=1 \
32 --output-file build/coverage.info
33
34 genhtml --branch-coverage \
35 --demangle-cpp \
36 --frames \
37 --legend \
38 --output-directory build/coverage \
39 --title "NFD unit tests" \
40 build/coverage.info
Alexander Afanasyev4d4e7252014-10-25 12:21:53 -070041fi