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 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.10.0 lcov report (development 20277-2bd9113) Lines: 984 1034 95.2 %
Date: 2017-02-21 05:49:51 Functions: 59 65 90.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
ApplyAllQ 679342
ApplyQ 1696341
FindApplyQ 1013117
QR_init 333775
R_from_QR 363
RgC_ApplyAllQ 560
RgC_ApplyQ 21840
RgM_Babai 434
RgM_QR_init 14
RgM_gram_schmidt 434
ZC_canon 202629
ZM_zc_mul_canon 202629
_gp_forqf 28
addcolumntomatrix 1652
addmulimp 4505632
algdep 0
algdep0 49
check_bound 1272734
check_condition 882
check_householder 28
cholesky_norm_ek 182
choose_params 14
clonefill 64
do_exhaustive 7
err_minim 0
fincke_pohst 806
forqfvec 0
forqfvec0 21
forqfvec_i 21
forqfvec_init 21
forqfvec_init_dolll 559
gaussred_from_QR 333398
lindep 0
lindep0 273
lindep2 105
lindep_Xadic 42
lindep_bit 2919
lindep_padic 14
lllintpartial 35
lllintpartial_inplace 0
lllintpartialall 35
mathouseholder 28
matqr 28
minim 168
minim0 518
minim0_dolll 560
minim2 0
minim_alloc 19190
minim_lll 559
minim_raw 42
mpgreaterthan 1448882
mplessthan 359355
mulimp 357815
no_prec_pb 1013117
norm_aux 1801712
perf 42
qfminim0 105
qfrep0 273
real_indep 735
seralgdep 28
smallvectors 783
sol_OK 14021
step 915262
vec_lindep 35
zncoppersmith 21

Generated by: LCOV version 1.11