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 29115-f22e516b23) Lines: 155159 171352 90.5 %
Date: 2024-02-22 08:05:55 Functions: 14584 15791 92.4 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 %

Directory Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage
gp
51.5%51.5%
51.5 % 371 / 720 48.4 % 31 / 64
graph
78.1%78.1%
78.1 % 1331 / 1704 76.9 % 123 / 160
language
80.0%80.0%
80.0 % 12165 / 15210 84.9 % 1195 / 1408
mt
93.7%93.7%
93.7 % 310 / 331 85.7 % 48 / 56
kernel/none
93.4%93.4%
93.4 % 3529 / 3780 85.7 % 415 / 484
headers
91.0%91.0%
91.0 % 1447 / 1590 90.2 % 650 / 721
basemath
91.6%91.6%
91.6 % 123453 / 134772 93.7 % 11289 / 12054
kernel/gmp
95.6%95.6%
95.6 % 790 / 826 96.7 % 58 / 60
modules
94.7%94.7%
94.7 % 11763 / 12419 98.9 % 775 / 784

Generated by: LCOV version 1.14