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 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 - language - intnum.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 22303-eb3e11d) Lines: 1402 1440 97.4 %
Date: 2018-04-21 06:16:28 Functions: 114 115 99.1 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
M_from_wrapmon 35
Pade 217
RFRAC_eval 2093
RX_realroots 217
_exfn 31157
_invf 12474
_mpmul 1844164
add_RFRAC_eval 2093
add_sumrfrac 21
auxcirc 3675
auxlin 36750
checkmonroots 168
checksumtab 28
checktab 4522
checktabdoub 476
checktabsimp 9009
code_aux 4165
contfrac_Euler 3185
contfraceval 35
contfraceval_inv 1947384
contfracinit 3206
contfracinit_i 3402
divr2_ip 332206
err_code 14
expscalpr 128643
exptab 119
expvec 238
expvecpr 238
f_getycplx 1953
get_kN 28
get_oo 196
homtab 357
id 170450
init_fin 462
initexpexp 84
initexpsinh 238
initnumsine 112
initsinh 126
initsinhsinh 14
inittanhsinh 238
intcirc 7
intcirc0 7
interp 105
intfuncinit 140
intfuncinit0 140
intfuncinit_i 126
intinit_end 812
intinit_start 812
intlin 70
intn 3829
intninfinf 581
intninfpm 476
intnsing 70
intnum 4921
intnum0 4620
intnum_i 4893
intnumainfrat 28
intnumgauexp 49
intnumgauexpinit 49
intnumgauss 56
intnumgauss0 56
intnumgaussinit 35
intnuminit 609
intnuminit0 4893
intnuminit_i 749
intnumromb 0
intnumromb0_bitprec 56
intnumromb_bitprec 56
is_fin_f 966
is_osc 140
isinC 20832
isinR 21602
logzetan 1498
monrefine 1561
monroots 119
polmax 126
prodeulerrat 49
prodnumrat 28
qrom2 63
qrom3 7
qromi 28
ratpolemax 42
ratpolemax2 42
rfrac_eval 2093
rfrac_eval0 28
rom_bsmall 28
rombint 35
sdmob 3374
sercoeff 15127
sumaux 14
sumeulerrat 35
sumlogzeta 42
sumnum 133
sumnum0 91
sumnumap 56
sumnumap0 56
sumnumapinit 49
sumnuminit 119
sumnumlagrange 84
sumnumlagrange0 84
sumnumlagrange1init 35
sumnumlagrange2init 7
sumnumlagrangeinit 63
sumnumlagrangeinit_i 49
sumnummonien 175
sumnummonien0 175
sumnummonieninit 105
sumnummonieninit_i 175
sumnumrat 56
sumnumrat_i 28
transcode 21357
veczetaprime 7
weight 252
wrapmonw 34384
wrapmonw2 18819

Generated by: LCOV version 1.11