feat: add code coverage support
All checks were successful
CI Code / Code Coverage (pull_request) Has been skipped
CI Code / Check spelling (pull_request) Successful in 20s
CI Code / Check coding style (pull_request) Successful in 33s
CI Code / Linux (ubuntu) (pull_request) Successful in 18m16s
CI Code / Linux (debian) (pull_request) Successful in 18m27s
CI Code / Linux (arch) (pull_request) Successful in 20m58s
All checks were successful
CI Code / Code Coverage (pull_request) Has been skipped
CI Code / Check spelling (pull_request) Successful in 20s
CI Code / Check coding style (pull_request) Successful in 33s
CI Code / Linux (ubuntu) (pull_request) Successful in 18m16s
CI Code / Linux (debian) (pull_request) Successful in 18m27s
CI Code / Linux (arch) (pull_request) Successful in 20m58s
- Add --enable-coverage option to configure.ac - Add coverage and coverage-html targets to Makefile.am - Add coverage CI job with Codecov upload - Add lcov to all Dockerfiles (arch, debian, fedora, tumbleweed, ubuntu) Usage: ./configure --enable-coverage make check make coverage-html
This commit is contained in:
14
Makefile.am
14
Makefile.am
@@ -384,6 +384,20 @@ check-unit: tests/unittests/unittests
|
||||
@VALGRIND_CHECK_RULES@
|
||||
VALGRIND_SUPPRESSIONS_FILES=prof.supp
|
||||
|
||||
# Code coverage targets (requires --enable-coverage)
|
||||
coverage-clean:
|
||||
find . -name '*.gcda' -delete
|
||||
find . -name '*.gcno' -delete
|
||||
rm -rf coverage-html coverage.info
|
||||
|
||||
coverage-report: check
|
||||
lcov --capture --directory . --output-file coverage.info --ignore-errors inconsistent
|
||||
lcov --remove coverage.info '/usr/*' '*/tests/*' --output-file coverage.info --ignore-errors inconsistent
|
||||
genhtml coverage.info --output-directory coverage-html
|
||||
@echo "Coverage report generated in coverage-html/index.html"
|
||||
|
||||
.PHONY: coverage-clean coverage-report
|
||||
|
||||
format: $(all_c_sources)
|
||||
clang-format -i $(all_c_sources)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user