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 29463-1101ba1c32) Lines: 1190 1262 94.3 %
Date: 2024-07-22 09:03:30 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 47729
RgM_gram_schmidt 47729
minim_alloc 95923
gaussred_from_QR 234360
ZM_zc_mul_canon_zm 240366
ZC_canon 245868
mplessthan 1215993
mulimp 1228008
step 2951771
check_bound 4165854
mpgreaterthan 4619884
norm_aux 5778345
QR_init 7598712
addmulimp 13536286
ApplyAllQ 16732075
no_prec_pb 24322187
FindApplyQ 24331000
ApplyQ 45496241

Generated by: LCOV version 1.16