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.16.2 lcov report (development 29115-f22e516b23) Lines: 1739 1866 93.2 %
Date: 2024-03-28 08:06:56 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 35
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 27423
cxEk 71141
cxanalyze 70
cxeint1 357
cxerfc_r1 14
cxpolylog 21
czeta 8631
dblmodulus 11605552
dilog 21
double_eta_quotient 2093
e12 3657
eint1 3283
eint1_asymp 105
eint1m 140
eint1p 6398
eint1r_asymp 28
eta 77
eta0 77
eta_correction 46011
eta_form 8372
eta_reduced 45997
expIPiC 376996
expIPiQ 39697
expIPiR 183756
expIPifrac 15052
expIxy 441701
expmx_xs 10843
fi 700
findextraincgam 6419
form_to_quad 8372
gamma_use_asymp 16639
gerfc 70
get_k 21
get_xinf 4578
gpolylog 133
gpolylog_i 175
gzeta 13440
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 45155
jbessel 384972
jbesselh 315
jbesselintern 397197
jell 42
kbessel 3115
kbessel1 14
kbessel2 0
kbesselintern 12432
logabs 42
mp_sum_j 224
mpeint1 2926
mpveceint1 231
mygamma 8372
optim_zeta 8610
polylog 203
polylog0 147
polylogD 21
polylogP 14
qq 70949
rX_s_eval 361032
real2nQ 9276
regI 518
regJ 81899
ser_E 7
ser_addmulXn 21
ser_eta 7
ser_j 14
ser_j2 7
sererfc 7
sqrt32 2233
sqz 82879
sum_jall 224
sumdedekind 28
sumdedekind_coprime 6258
szeta 4795
theta 14
thetanullk 7
to_form 8372
trueeta 37569
u_sumdedekind_coprime 6251
upper_to_cx 108511
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 35
weberf 14
weberf1 14
weberf2 7
ybessel 9317
zetaBorwein 598
zeta_funeq 8624

Generated by: LCOV version 1.14