Code coverage tests

This page documents the degree to which the PARI/GP source code is tested by our public test suite, distributed with the source distribution in directory src/test/. This is measured by the gcov utility; we then process gcov output using the lcov frond-end.

We test a few variants depending on Configure flags on the pari.math.u-bordeaux.fr machine (x86_64 architecture), and agregate them in the final report:

The target is to exceed 90% coverage for all mathematical modules (given that branches depending on DEBUGLEVEL or DEBUGMEM are not covered). This script is run to produce the results below.

LCOV - code coverage report
Current view: top level Hit Total Coverage
Test: PARI/GP v2.12.1 lcov report (development 25699-90e2985bd0) Lines: 136638 150593 90.7 %
Date: 2020-08-10 06:06:09 Functions: 12717 13777 92.3 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 %

Directory Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage
basemath
92.1%92.1%
92.1 % 106231 / 115362 93.8 % 9581 / 10210
gp
51.5%51.5%
51.5 % 371 / 720 48.4 % 31 / 64
graph
80.8%80.8%
80.8 % 1301 / 1610 80.3 % 122 / 152
headers
89.6%89.6%
89.6 % 1359 / 1516 89.4 % 589 / 659
kernel/gmp
91.8%91.8%
91.8 % 758 / 826 98.3 % 59 / 60
kernel/none
92.7%92.7%
92.7 % 3436 / 3706 85.3 % 405 / 475
language
79.9%79.9%
79.9 % 11679 / 14624 84.7 % 1157 / 1366
modules
94.0%94.0%
94.0 % 11220 / 11930 98.3 % 730 / 743
mt
94.6%94.6%
94.6 % 283 / 299 89.6 % 43 / 48

Generated by: LCOV version 1.13