Also capture coverage data for tests but filter them from the result

Otherwise calls from test cases to static inline functions are not captured.
This commit is contained in:
Tobias Brunner 2013-03-27 17:41:04 +01:00
parent 9a8c873e90
commit ab73ae67d3
2 changed files with 13 additions and 9 deletions

View File

@ -37,20 +37,24 @@ Doxyfile : Doxyfile.in
apidoc : Doxyfile
doxygen
if COVERAGE
cov-reset:
cov-reset-common:
@rm -rf $(top_builddir)/coverage
@find $(top_builddir) -name "*.gcda" -delete
if COVERAGE
cov-reset: cov-reset-common
@lcov --zerocounters --directory $(top_builddir)
cov-report:
@mkdir $(top_builddir)/coverage
lcov -c -o $(top_builddir)/coverage/coverage.info -d $(top_builddir)
lcov -r $(top_builddir)/coverage/coverage.info '*/tests/*' \
-o $(top_builddir)/coverage/coverage.cleaned.info
genhtml --num-spaces 4 --legend \
-t "$(PACKAGE_STRING)" \
-o $(top_builddir)/coverage/html \
-p `readlink -m $(abs_top_srcdir)`/src \
$(top_builddir)/coverage/coverage.info
$(top_builddir)/coverage/coverage.cleaned.info
@echo "Coverage Report at $(top_builddir)/coverage/html" >&2
coverage:
@ -58,12 +62,12 @@ coverage:
@$(MAKE) check
@$(MAKE) cov-report
else
cov-reset:
coverage:
@echo "reconfigure with --enable-coverage"
endif
clean-local:
@$(MAKE) cov-reset
rm -rf apidoc
clean-local: cov-reset-common
@find $(top_builddir) -name "*.gcno" -delete
@rm -rf apidoc
.PHONY: cov-reset-common cov-reset cov-report coverage

View File

@ -8,9 +8,9 @@ test_runner_SOURCES = \
test_chunk.c test_hashtable.c test_identification.c \
test_threading.c test_utils.c
test_runner_CFLAGS = \
-I$(top_srcdir)/src/libstrongswan \
@COVERAGE_CFLAGS@ \
@CHECK_CFLAGS@
test_runner_LDFLAGS = @COVERAGE_LDFLAGS@