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.14.0 lcov report (development 27771-06852b991d) Lines: 150317 164848 91.2 %
Date: 2022-07-01 07:33:23 Functions: 14086 15168 92.9 %
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.5%92.5%
92.5 % 119494 / 129239 94.3 % 10867 / 11519
gp
51.5%51.5%
51.5 % 371 / 720 48.4 % 31 / 64
graph
81.5%81.5%
81.5 % 1325 / 1626 80.9 % 123 / 152
headers
90.9%90.9%
90.9 % 1451 / 1596 90.2 % 645 / 715
kernel/gmp
92.5%92.5%
92.5 % 764 / 826 98.3 % 59 / 60
kernel/none
93.7%93.7%
93.7 % 3479 / 3714 85.7 % 408 / 476
language
80.1%80.1%
80.1 % 11897 / 14854 84.8 % 1174 / 1384
modules
94.0%94.0%
94.0 % 11226 / 11946 98.3 % 731 / 744
mt
94.8%94.8%
94.8 % 310 / 327 88.9 % 48 / 54

Generated by: LCOV version 1.13