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 - trans3.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.18.0 lcov report (development 29712-7c8a932571) Lines: 1742 1867 93.3 %
Date: 2024-11-15 09:08:45 Functions: 126 129 97.7 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Li1 42
RIpolylog 119
RgV_is_arithprog 14
RgXn_eta 28
_abs 900443
_jbessel 314931
_jbesselh 119
_kbessel 10860
apply_eta_correction 42
bessel_asymp 408964
bessel_get_lim 325504
besseljzero 511
besselrefine 1008
besselyzero 511
besselzero 1022
bessiasymp 518
bessjasymp 81433
besskasymp 462
bessyasymp 466
check_unit_disc 21
coeffEu 476
constzeta 27422
cxEk 71141
cxanalyze 84
cxeint1 357
cxerfc_r1 14
cxpolylog 21
czeta 8631
dblmodulus 11721123
dilog 21
double_eta_quotient 2093
e12 3689
eint1 3283
eint1_asymp 105
eint1m 140
eint1p 6510
eint1r_asymp 28
eta 77
eta0 77
eta_correction 46025
eta_form 8372
eta_reduced 46011
expIPiC 377024
expIPiQ 39704
expIPiR 183786
expIPifrac 15098
expIxy 572978
expmx_xs 10843
fi 700
findextraincgam 6419
form_to_quad 8372
gamma_use_asymp 16751
gerfc 70
get_k 21
get_xinf 4578
gpolylog 133
gpolylog_i 175
gzeta 13636
hankel_ABr 82879
hbessel1 224
hbessel2 224
ibessel 896
incgam 1106
incgam0 11550
incgam_asymp 2716
incgam_asymp_partial 546
incgamc 2226
incgamc_i 6426
incgamspec 2401
inteta 45169
jbessel 384972
jbesselh 315
jbesselintern 397197
jell 42
kbessel 3115
kbessel1 14
kbessel2 0
kbesselintern 12432
logabs 42
mp_sum_j 231
mpeint1 2926
mpveceint1 238
mygamma 8372
optim_zeta 8610
polylog 203
polylog0 147
polylogD 21
polylogP 14
qq 70949
rX_s_eval 364903
real2nQ 9301
regI 518
regJ 81899
ser_E 7
ser_addmulXn 21
ser_eta 7
ser_j 14
ser_j2 7
sererfc 7
sqrt32 2240
sqz 82879
sum_jall 231
sumdedekind 28
sumdedekind_coprime 6265
szeta 4991
theta 14
thetanullk 7
to_form 8372
trueeta 37569
u_sumdedekind_coprime 6258
upper_to_cx 108518
veceint1 49
vecthetanullk 0
vecthetanullk_loop 70872
vecthetanullk_tau 0
veczeta 217
veczetas 698
vibessel 42
vjbessel 126
vjbesselh 42
vkbessel 42
vnbessel 126
weber0 42
weberf 14
weberf1 14
weberf2 14
ybessel 9317
zetaBorwein 598
zeta_funeq 8624

Generated by: LCOV version 1.16