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.18.1 lcov report (development 30074-db9b3c0519) Lines: 156876 173372 90.5 %
Date: 2025-03-13 08:38:27 Functions: 14817 16045 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
91.5%91.5%
91.5 % 125362 / 136967 93.7 % 11529 / 12305
gp
50.1%50.1%
50.1 % 348 / 695 45.9 % 28 / 61
graph
78.1%78.1%
78.1 % 1328 / 1701 76.9 % 123 / 160
headers
90.9%90.9%
90.9 % 1431 / 1574 90.2 % 652 / 723
kernel/gmp
95.6%95.6%
95.6 % 790 / 826 96.7 % 58 / 60
kernel/none
93.3%93.3%
93.3 % 3535 / 3788 86.0 % 417 / 485
language
79.4%79.4%
79.4 % 12171 / 15324 84.2 % 1192 / 1415
modules
95.5%95.5%
95.5 % 11837 / 12393 99.0 % 795 / 803
mt
71.2%71.2%
71.2 % 74 / 104 69.7 % 23 / 33

Generated by: LCOV version 1.16