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.1 lcov report (development 28676-df828f1c94) Lines: 1211 1259 96.2 %
Date: 2023-08-26 07:54:43 Functions: 91 93 97.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
G3 3689
G4 1897
Gn24 105
Hseries 1379
Qp_gamma 11829
Qp_gamma_Dwork 11479
Qp_gamma_Morita 350
Qp_gamma_neg_Morita 112
Qp_lngamma 14
_mul 148773
acos0 14
atan2_agm 182
atanhui 14
atanhuu 196336
bern_u 210166
bern_unextu 8050694
cbrtu 245
cos12 49
cxarg 3408719
cxgamma 233929
cxpsi 4228
dabs 16660
darg 238991
dcxlog 238991
dlogE 4214
dnorm 20453
ellKk 5999
ellkprime 5999
err_atanh 28
err_psi 0
gacos 7931
gacosh 7994
gadw 11479
gamma2_n 35364
gamma_optim 231025
gamma_use_1 233895
gammafrac24 43393
gammafrac24_s 5607
gammahs 35364
garg 3431850
gasin 8393
gasinh 15715
gatan 21866
gatanh 15176
gcosh 3787
gcotanh 63
ggamma 668127
ggamma1m1 1211
ggammah 28
glngamma 35595
gpsi 46235
gsinh 18361
gtanh 77161
lngamma1 15355
lngamma_n 7889
lngamma_sum 219132
mpacos 105
mpacosh 742
mparg 3408701
mpasin 98
mpasinh 483
mpatan 3422163
mpatanh 42
mpcosh 3696
mpcosh0 7
mpcotanh 7
mpfactr 441782
mpfactr_basecase 517
mpfactr_n 636
mpfactr_small 7889
mpsinh 15351
mpsinh0 0
mpsinhcosh 17416
mptanh 77056
muliunextu 8050631
mulu_interval_step_i 26592
mulu_interval_step_prec 26592
nboft 11479
negeuler 9114
psi1series 11830
psi_lim 4228
psi_n 21315
psi_sum 4228
rfix 6817409
sergamma 23492
serlngamma0 23527
serpsi 20475
serpsiz0 8939
sin12 21
sinx2 28
sqrtu 9401
tr 2030993
trans_fix_arg 246817

Generated by: LCOV version 1.14