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 - basemath - bibli1.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.16.2 lcov report (development 29395-ef22f77854) Lines: 1190 1262 94.3 %
Date: 2024-06-15 09:03:40 Functions: 74 80 92.5 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
algdep 0
err_minim 0
forqfvec 0
lindep 0
lllintpartial_inplace 0
minim2 0
do_exhaustive 7
minim 7
serdiffdep 14
RgM_QR_init 21
choose_params 21
lindep_padic 28
check_householder 35
lllintpartial 35
lllintpartialall 35
mathouseholder 35
matqr 35
vec_lindep 35
zncoppersmith 35
forqfvec0 42
forqfvec1 42
forqfvec_i 42
forqfvec_init 42
minim_raw 42
qfperfection 42
seralgdep 42
forqfvec_wrap 56
sertomat 56
cvp_alloc 70
algdep0 77
lindep_Xadic 77
cvp0 91
cvp0_dolll 91
qfcvp0 91
lindep2 112
qfminim0 133
clonefill 141
cholesky_norm_ek 182
minim0_zm 252
minim_zm 252
lindep0 434
qfrep0 462
minim0 553
RgC_ApplyAllQ 567
minim0_dolll 847
check 882
forqfvec_init_dolll 902
minim_lll 902
real_indep 1634
addcolumntomatrix 1652
bestapprnf 1939
lindep_bit 3335
cx_bestapprnf 5488
lindepcx 5488
ZM_zc_mul_canon 5502
bestapprnf_i 8211
lindepfull_bit 8823
sol_OK 14021
R_from_QR 14210
smallvectors 14655
fincke_pohst 14676
RgC_ApplyQ 22113
RgM_Babai 47728
RgM_gram_schmidt 47728
minim_alloc 95886
gaussred_from_QR 234323
ZM_zc_mul_canon_zm 240366
ZC_canon 245868
mplessthan 1215989
mulimp 1228004
step 2951757
check_bound 4165833
mpgreaterthan 4619826
norm_aux 5778303
QR_init 7597949
addmulimp 13536264
ApplyAllQ 16729603
no_prec_pb 24318923
FindApplyQ 24327848
ApplyQ 45482646

Generated by: LCOV version 1.16