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 27102-e8476a37b5) Lines: 144933 158839 91.2 %
Date: 2021-12-03 07:05:36 Functions: 13559 14607 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
92.6%92.6%
92.6 % 114295 / 123408 94.4 % 10402 / 11018
gp
51.5%51.5%
51.5 % 371 / 720 48.4 % 31 / 64
graph
81.6%81.6%
81.6 % 1323 / 1621 80.9 % 123 / 152
headers
90.1%90.1%
90.1 % 1397 / 1550 89.4 % 598 / 669
kernel/gmp
92.5%92.5%
92.5 % 764 / 826 98.3 % 59 / 60
kernel/none
93.1%93.1%
93.1 % 3457 / 3713 85.3 % 405 / 475
language
80.0%80.0%
80.0 % 11813 / 14773 84.7 % 1166 / 1376
modules
94.1%94.1%
94.1 % 11204 / 11903 98.2 % 728 / 741
mt
95.1%95.1%
95.1 % 309 / 325 90.4 % 47 / 52

Generated by: LCOV version 1.13