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 29115-f22e516b23) Lines: 1085 1137 95.4 %
Date: 2024-04-26 08:07:25 Functions: 70 76 92.1 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
ApplyAllQ 14422989
ApplyQ 41904828
FindApplyQ 21108896
QR_init 6685664
R_from_QR 14056
RgC_ApplyAllQ 567
RgC_ApplyQ 22113
RgM_Babai 47499
RgM_QR_init 21
RgM_gram_schmidt 47499
ZC_canon 245868
ZM_zc_mul_canon 5502
ZM_zc_mul_canon_zm 240366
addcolumntomatrix 1652
addmulimp 22470515
algdep 0
algdep0 77
bestapprnf 1939
bestapprnf_i 8211
check 882
check_bound 6118002
check_householder 35
cholesky_norm_ek 182
choose_params 21
clonefill 159
cx_bestapprnf 5488
do_exhaustive 7
err_minim 0
fincke_pohst 14459
forqfvec 0
forqfvec0 42
forqfvec1 42
forqfvec_i 42
forqfvec_init 42
forqfvec_init_dolll 832
forqfvec_wrap 56
gaussred_from_QR 244249
lindep 0
lindep0 434
lindep2 112
lindep_Xadic 77
lindep_bit 3181
lindep_padic 28
lindepcx 5488
lindepfull_bit 8669
lllintpartial 35
lllintpartial_inplace 0
lllintpartialall 35
mathouseholder 35
matqr 35
minim 7
minim0 553
minim0_dolll 847
minim0_zm 252
minim2 0
minim_alloc 107534
minim_lll 832
minim_raw 42
minim_zm 252
mpgreaterthan 6568055
mplessthan 1848704
mulimp 1860569
no_prec_pb 21099612
norm_aux 8359711
qfminim0 133
qfperfection 42
qfrep0 462
real_indep 1634
seralgdep 42
serdiffdep 14
sertomat 56
smallvectors 14438
sol_OK 14021
step 4271205
vec_lindep 35
zncoppersmith 35

Generated by: LCOV version 1.14