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
ApplyAllQ 16732075
ApplyQ 45496241
FindApplyQ 24331000
QR_init 7598712
R_from_QR 14210
RgC_ApplyAllQ 567
RgC_ApplyQ 22113
RgM_Babai 47729
RgM_QR_init 21
RgM_gram_schmidt 47729
ZC_canon 245868
ZM_zc_mul_canon 5502
ZM_zc_mul_canon_zm 240366
addcolumntomatrix 1652
addmulimp 13536286
algdep 0
algdep0 77
bestapprnf 1939
bestapprnf_i 8211
check 882
check_bound 4165854
check_householder 35
cholesky_norm_ek 182
choose_params 21
clonefill 141
cvp0 91
cvp0_dolll 91
cvp_alloc 70
cx_bestapprnf 5488
do_exhaustive 7
err_minim 0
fincke_pohst 14676
forqfvec 0
forqfvec0 42
forqfvec1 42
forqfvec_i 42
forqfvec_init 42
forqfvec_init_dolll 902
forqfvec_wrap 56
gaussred_from_QR 234360
lindep 0
lindep0 434
lindep2 112
lindep_Xadic 77
lindep_bit 3335
lindep_padic 28
lindepcx 5488
lindepfull_bit 8823
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 95923
minim_lll 902
minim_raw 42
minim_zm 252
mpgreaterthan 4619884
mplessthan 1215993
mulimp 1228008
no_prec_pb 24322187
norm_aux 5778345
qfcvp0 91
qfminim0 133
qfperfection 42
qfrep0 462
real_indep 1634
seralgdep 42
serdiffdep 14
sertomat 56
smallvectors 14655
sol_OK 14021
step 2951771
vec_lindep 35
zncoppersmith 35

Generated by: LCOV version 1.16