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 30249-6b5dfc0a25) Lines: 157645 173855 90.7 %
Date: 2025-04-29 09:18:49 Functions: 14904 16064 92.8 %
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.6%91.6%
91.6 % 125879 / 137359 93.7 % 11589 / 12363
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
92.8%92.8%
92.8 % 1428 / 1539 92.1 % 653 / 709
kernel/gmp
95.6%95.6%
95.6 % 789 / 825 96.7 % 58 / 60
kernel/none
95.4%95.4%
95.4 % 3513 / 3681 94.0 % 409 / 435
language
79.7%79.7%
79.7 % 12204 / 15322 84.7 % 1200 / 1416
modules
95.5%95.5%
95.5 % 11841 / 12397 99.0 % 796 / 804
mt
93.8%93.8%
93.8 % 315 / 336 85.7 % 48 / 56

Generated by: LCOV version 1.16