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 25060-ca26411608) Lines: 132004 145729 90.6 %
Date: 2020-02-16 05:58:28 Functions: 12491 13583 92.0 %
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 % 102444 / 111230 93.9 % 9422 / 10031
gp
51.4%51.4%
51.4 % 364 / 708 48.4 % 31 / 64
graph
80.1%80.1%
80.1 % 1265 / 1579 78.4 % 120 / 153
headers
89.1%89.1%
89.1 % 1327 / 1490 89.2 % 588 / 659
kernel/gmp
91.7%91.7%
91.7 % 753 / 821 98.3 % 58 / 59
kernel/none
93.1%93.1%
93.1 % 3245 / 3484 84.8 % 380 / 448
language
77.2%77.2%
77.2 % 10499 / 13592 80.5 % 1075 / 1335
modules
94.4%94.4%
94.4 % 11836 / 12534 98.6 % 778 / 789
mt
93.1%93.1%
93.1 % 271 / 291 86.7 % 39 / 45

Generated by: LCOV version 1.13