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.1 lcov report (development 28676-df828f1c94) Lines: 1733 1860 93.2 %
Date: 2023-08-26 07:54:43 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 949488
_jbessel 338270
_jbesselh 119
_kbessel 10860
apply_eta_correction 35
bessel_asymp 433092
bessel_get_lim 348843
besseljzero 511
besselrefine 1008
besselyzero 511
besselzero 1022
bessiasymp 518
bessjasymp 82222
besskasymp 462
bessyasymp 466
check_unit_disc 21
coeffEu 476
constzeta 27038
cxEk 13741
cxanalyze 70
cxeint1 357
cxerfc_r1 14
cxpolylog 21
czeta 8596
dblmodulus 10095352
dilog 21
double_eta_quotient 2093
e12 3548
eint1 3283
eint1_asymp 105
eint1m 140
eint1p 6958
eint1r_asymp 28
eta 77
eta0 77
eta_correction 17311
eta_form 8372
eta_reduced 17297
expIPiC 233508
expIPiQ 10997
expIPiR 181544
expIPifrac 12578
expIxy 147
expmx_xs 10843
fi 700
findextraincgam 6419
form_to_quad 8372
gamma_use_asymp 17199
gerfc 70
get_k 21
get_xinf 4578
gpolylog 133
gpolylog_i 175
gzeta 13405
hankel_ABr 83668
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 16455
jbessel 409100
jbesselh 315
jbesselintern 421325
jell 42
kbessel 3115
kbessel1 14
kbessel2 0
kbesselintern 12432
logabs 42
mp_sum_j 259
mpeint1 2926
mpveceint1 266
mygamma 8372
optim_zeta 8575
polylog 203
polylog0 147
polylogD 21
polylogP 14
qq 13549
rX_s_eval 481831
real2nQ 1747
regI 518
regJ 82688
ser_E 7
ser_addmulXn 21
ser_eta 7
ser_j 14
ser_j2 7
sererfc 7
sqrt32 2203
sqz 83668
sum_jall 259
sumdedekind 28
sumdedekind_coprime 6258
szeta 4795
theta 14
thetanullk 7
to_form 8372
trueeta 8869
u_sumdedekind_coprime 6251
upper_to_cx 22411
veceint1 49
vecthetanullk 0
vecthetanullk_loop 13472
vecthetanullk_tau 0
veczeta 217
veczetas 729
vibessel 42
vjbessel 126
vjbesselh 42
vkbessel 42
vnbessel 126
weber0 35
weberf 14
weberf1 14
weberf2 7
ybessel 9317
zetaBorwein 598
zeta_funeq 8589

Generated by: LCOV version 1.14