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.16.2 lcov report (development 29450-bb9f460d63) Lines: 155780 171830 90.7 %
Date: 2024-07-15 09:03:41 Functions: 14668 15854 92.5 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 %

Directory Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage
basemath
91.7%91.7%
91.7 % 123989 / 135161 93.8 % 11365 / 12111
gp
50.3%50.3%
50.3 % 352 / 700 46.8 % 29 / 62
graph
78.1%78.1%
78.1 % 1330 / 1702 76.9 % 123 / 160
headers
91.1%91.1%
91.1 % 1449 / 1591 90.2 % 651 / 722
kernel/gmp
96.2%96.2%
96.2 % 795 / 826 96.7 % 58 / 60
kernel/none
93.3%93.3%
93.3 % 3526 / 3779 85.7 % 415 / 484
language
80.0%80.0%
80.0 % 12209 / 15270 85.0 % 1200 / 1411
modules
94.8%94.8%
94.8 % 11820 / 12470 98.9 % 779 / 788
mt
93.7%93.7%
93.7 % 310 / 331 85.7 % 48 / 56

Generated by: LCOV version 1.16