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.12.1 lcov report (development 25583-54cacb043f) Lines: 136632 150482 90.8 %
Date: 2020-07-10 06:04:50 Functions: 12715 13764 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
basemath
92.2%92.2%
92.2 % 106242 / 115275 93.9 % 9583 / 10202
gp
51.5%51.5%
51.5 % 371 / 720 48.4 % 31 / 64
graph
80.8%80.8%
80.8 % 1301 / 1610 80.3 % 122 / 152
headers
89.9%89.9%
89.9 % 1349 / 1500 89.5 % 588 / 657
kernel/gmp
91.8%91.8%
91.8 % 758 / 826 98.3 % 59 / 60
kernel/none
92.7%92.7%
92.7 % 3436 / 3706 85.3 % 405 / 475
language
79.9%79.9%
79.9 % 11672 / 14616 84.7 % 1154 / 1363
modules
94.0%94.0%
94.0 % 11220 / 11930 98.3 % 730 / 743
mt
94.6%94.6%
94.6 % 283 / 299 89.6 % 43 / 48

Generated by: LCOV version 1.13