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 29115-f22e516b23) Lines: 1223 1272 96.1 %
Date: 2024-04-19 08:07:09 Functions: 92 94 97.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
G3 3689
G4 1921
Gn24 105
Hseries 1400
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 184
atanhui 14
atanhuu 4336858
bern_u 210024
bern_unextu 8104057
cbrtu 245
cos12 49
cxarg 4140018
cxgamma 236771
cxpsi 4228
dabs 16660
darg 242037
dcxlog 242037
dlogE 4214
dnorm 20789
ellKk 6023
ellkprime 6023
err_atanh 28
err_psi 0
gacos 7931
gacosh 7994
gadw 11479
gamma2_n 36186
gamma_optim 234070
gamma_use_1 236730
gammafrac24 44575
gammafrac24_s 5631
gammahs 36186
garg 4157488
gasin 8393
gasinh 19012
gatan 59623
gatanh 45785
gcosh 3542
gcotanh 63
get_nmax 4320010
ggamma 647503
ggamma1m1 1211
ggammah 28
glngamma 38002
gpsi 46336
gsinh 21140
gtanh 77161
lngamma1 15690
lngamma_n 7889
lngamma_sum 222017
mpacos 105
mpacosh 742
mparg 4140013
mpasin 98
mpasinh 1337
mpatan 4162531
mpatanh 4536
mpcosh 3451
mpcosh0 7
mpcotanh 7
mpfactr 419386
mpfactr_basecase 517
mpfactr_n 636
mpfactr_small 7889
mpsinh 15351
mpsinh0 0
mpsinhcosh 1448582
mptanh 77056
muliunextu 8103898
mulu_interval_step_i 26697
mulu_interval_step_prec 26697
nboft 11479
negeuler 9166
psi1series 11879
psi_lim 4228
psi_n 21315
psi_sum 4228
rfix 8280030
sergamma 24296
serlngamma0 24331
serpsi 20576
serpsiz0 8991
sin12 21
sinx2 28
sqrtu 9425
tr 2047662
trans_fix_arg 249693

Generated by: LCOV version 1.14