Thomas Rast added initial test coverage support in 901c369af5. Expand on that so that coverage is extended to C files in builtin/, xdiff/ and compat/.
In addition I've added support for formatting the coverage reports with gcov2perl and Devel::Cover. Here's an example report formatted with these tools:
http://v.nix.is/~avar/cover_db_html/coverage.html
With it we can see that Git currently has 77.1% test coverage for its core C code. It's also possible to dive in on a per-file basis, e.g. here you can see how sparse the tests for git-blame's -L option are, as I noted in a previous thread (and send partial patches):
http://v.nix.is/~avar/cover_db_html/builtin-blame-c.html
I didn't yet look at how I could run the test suite so that we also get test coverage for our core Perl code. Devel::Cover obviously supports that, but it's just a matter of running the tests with the right environmental variables, and merging the gcov + Devel::Cover reports.
But that's a project for another day.
Ævar Arnfjörð Bjarmason (6): gitignore: Ignore files generated by "make coverage" Makefile: Include subdirectories in "make cover" reports Makefile: Split out the untested functions target Makefile: Add coverage-report-cover-db target Makefile: Add coverage-report-cover-db-html target t/README: A new section about test coverage
.gitignore | 15 +++++++++++++++ Makefile | 16 +++++++++++++++- t/README | 40 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 1 deletions(-)