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 25685-2ac6d95b9c) Lines: 136611 150561 90.7 %
Date: 2020-08-06 06:06:08 Functions: 12711 13773 92.3 %
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
80.8%80.8%
80.8 % 1301 / 1610 80.3 % 122 / 152
language
79.8%79.8%
79.8 % 11668 / 14616 84.6 % 1153 / 1363
kernel/none
92.7%92.7%
92.7 % 3436 / 3706 85.3 % 405 / 475
headers
89.8%89.8%
89.8 % 1361 / 1516 89.4 % 589 / 659
mt
94.6%94.6%
94.6 % 283 / 299 89.6 % 43 / 48
basemath
92.1%92.1%
92.1 % 106213 / 115338 93.8 % 9579 / 10209
modules
94.0%94.0%
94.0 % 11220 / 11930 98.3 % 730 / 743
kernel/gmp
91.8%91.8%
91.8 % 758 / 826 98.3 % 59 / 60

Generated by: LCOV version 1.13