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 - trans2.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.16.2 lcov report (development 29420-55f63b8cfe) Lines: 1260 1313 96.0 %
Date: 2024-07-03 09:03:24 Functions: 95 97 97.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
G3 3689
G4 1918
Gn24 105
Hseries 1400
Qp_gamma 216242
Qp_gamma_Dwork 215745
Qp_gamma_Morita 490
Qp_gamma_neg_Morita 238
Qp_lngamma 14
Qp_psi 238
_gpsi_der 70
_mul 148745
acos0 14
atan2_agm 184
atanhui 14
atanhuu 5420350
bern_u 211323
bern_unextu 7804032
cbrtu 245
cos12 49
cxarg 4446280
cxgamma 227833
cxpsi 4438
dabs 16660
darg 233126
dcxlog 233124
dlogE 4235
dnorm 20643
ellKk 6020
ellkprime 6020
err_atanh 28
err_psi 0
gacos 7931
gacosh 7994
gadw 215746
gamma2_n 36267
gamma_optim 225137
gamma_use_1 227797
gammafrac24 44590
gammafrac24_s 5628
gammahs 36267
garg 4463815
gasin 8393
gasinh 20139
gatan 59866
gatanh 45785
gcosh 3619
gcotanh 63
get_nmax 5403459
ggamma 628717
ggamma1m1 1211
ggammah 28
glngamma 38794
gpsi 46375
gpsi_der 742
gsinh 11844
gtanh 77161
lngamma1 15634
lngamma_n 7889
lngamma_sum 213079
mpacos 105
mpacosh 742
mparg 4446269
mpasin 98
mpasinh 1610
mpatan 4469017
mpatanh 4536
mpcosh 3528
mpcosh0 7
mpcotanh 7
mpfactr 410132
mpfactr_basecase 517
mpfactr_n 636
mpfactr_small 7889
mpsinh 6027
mpsinh0 0
mpsinhcosh 428064
mptanh 77056
muliunextu 7803814
mulu_interval_step_i 26690
mulu_interval_step_prec 26690
nboft 215746
negeuler 9219
psi1series 11935
psi_lim 4249
psi_n 21322
psi_sum 4249
rfix 8892537
sergamma 24458
serlngamma0 24493
serpsi 20685
serpsiz0 9044
sin12 21
sinx2 28
sqrtu 9422
tr 2057138
trans_fix_arg 240776

Generated by: LCOV version 1.16