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 - basemath - gen3.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 19374-ac31b96) Lines: 2070 2288 90.5 %
Date: 2016-08-30 06:11:37 Functions: 209 219 95.4 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 2946086
QpV_to_QV 70
RgM_mulreal 0
RgX_cxeval 278293
RgX_deflate_max 13460
RgX_deflate_order 13572
RgX_degree 22148
RgX_integ 98
ZX_deflate_max 21149
ZX_deflate_order 37529
_egal 24203534
_egal_i 24203534
_gtopoly 2492553
_polcoeff 199080
_quot 602
_quotfi 7
_quotfs 77
_quotri 7
_quotrs 28
_quotsf 35
_quotsr 70
_rfraccoeff 21
_sercoeff 1309
bitprecision0 35
ceil_safe 61561
ceilr 2781
centerlift 13454
centerlift0 105
centerliftii 9408
coefstoser 7
compo 305
deg1pol 523947
deg1pol_shallow 1758488
degree 0
denom 9168327
deriv 104195
derivser 10248
diffop 3535
diffop0 42
diviiround 12223606
divrem 896
err_intformal 35
floor_safe 7960
gceil 15222
gcvtoi 80563
gdeflate 210
gdivent 6086136
gdiventgs 1429
gdiventres 21455
gdiventsg 6084308
gdivmod 0
gdivround 496023
gdvd 3850
geq 1218201
geval 0
geval_gp 10129
gfloor 4192202
gfrac 91
gge 124174
ggrando 4641
ggt 132482
gimag 2525
gle 7623458
glt 6212160
gmod 7625030
gmodgs 13858
gmodsg 7406373
gmodulo 822956
gmodulsg 695433
gmodulss 600371
gne 22985333
gnot 259434
gppadicprec 105
gppoldegree 5089
gprecision 2622153
gpserprec 28
greal 81265
grndtoi 8495386
ground 973915
gshift 40832700
gsubst 210469
gsubst_expr 35
gsubstpol 84
gsubstvec 756
gtocol 182
gtocol0 1197
gtocolrev 0
gtocolrev0 252
gtopoly 68138
gtopolyrev 2424415
gtoser 212352
gtovec 245469
gtovec0 246512
gtovecpost 1148
gtovecpre 343
gtovecrev 7
gtovecrev0 266
gtovecsmall 1737361
gtovecsmall0 14287
gtovecsmallpost 84
gtovecsmallpre 84
gtrunc 882
gtrunc2n 10060156
gvar 97755926
gvar2 19904018
gvar9 47775
hqfeval 0
imag_i 352236
init_qf_apply 145712
init_vectopre 245
integ 350
integ_act 14
integser 10766
inv_ser 294
iscomplex 21
isinexact 128394712
isinexactreal 13125
isint 25067
isrationalzeroscalar 0
isrealappr 76765
issmall 7469
lift 135081
lift0 224594
lift_intern 133228
liftall 77
liftall_shallow 679
liftint 119
liftint_shallow 546
liftpol 98
liftpol_shallow 135373
listdeflate 21
lookup 833
mkcoln 0
mkintn 14105
mkpoln 2336590
mkvecn 16982
mkvecsmalln 3872
mod_r 168
modr_safe 463736
modrs 14
modsf 35
modsr 35
mulreal 11029452
multi_coeff 41902
numer 8233364
op_ReIm 1161144
padic_to_Q 8141
padic_to_Q_shallow 21
padicprec 147
padicprec_relative 2037
polcoeff0 59591
polcoeff_i 186529
poldeflate 112
poldegree 9189
poleval 680487
pollead 3397
poltoser 213710
prec0 10676
precCOMPLEX 1945394
precREAL 924760
precision 1325125
precision0 3276
precrealexact 326756
qf_apply_RgM 497
qf_apply_ZM 145215
qfb_apply_ZM 7
qfbeval 14
qfbevalb 7
qfbil 0
qfeval 21
qfeval0 133
qfevalb 21
qfnorm 0
qfnorm0 77
quot 553
quotfi 7
quotfs 77
quotrem 343
quotri 7
quotrs 14
quotsf 35
quotsr 35
real_i 6578681
recvar 329
rfractoser 151921
round0 3626
round_i 17161070
roundr 2677667
roundr_safe 9677941
scalarpol 4817509
scalarpol_shallow 240146
scalarser 167139
ser2pol_i 3296334
ser2rfrac 252
ser2rfrac_i 3192
ser_unscale 602
serdeflate 35
serprec 56
serreverse 49
sertoser 273
simplify 10655083
simplify_shallow 311576243
swapvar_act 21
tayl 7
tayl_act 7
toser_i 692776
triv_integ 35
trunc0 217
uu32toi 434667
var2_aux 8561
var2_polmod 1526
var2_rfrac 7035
variables_vec 14
variables_vecsmall 7
vdeflate 63
vec_padicprec 21
vec_padicprec_relative 602
vec_serprec 14
vecdenom 812

Generated by: LCOV version 1.11