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.10.0 lcov report (development 19832-7f23dbb) Lines: 2074 2292 90.5 %
Date: 2016-12-08 05:49:22 Functions: 209 219 95.4 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 2928341
QpV_to_QV 91
RgM_mulreal 0
RgX_cxeval 287969
RgX_deflate_max 13945
RgX_deflate_order 14057
RgX_degree 21476
RgX_integ 98
ZX_deflate_max 21702
ZX_deflate_order 38586
_egal 24354917
_egal_i 24354917
_gtopoly 2493687
_polcoeff 174307
_quot 602
_quotfi 7
_quotfs 77
_quotri 7
_quotrs 28
_quotsf 35
_quotsr 70
_rfraccoeff 21
_sercoeff 12572
bitprecision0 35
ceil_safe 62060
ceilr 2781
centerlift 13454
centerlift0 105
centerliftii 9408
coefstoser 7
compo 305
deg1pol 525276
deg1pol_shallow 1810881
degree 0
denom 9168096
deriv 104195
derivser 10430
diffop 3535
diffop0 42
diviiround 11623782
divrem 896
err_intformal 35
floor_safe 8456
gceil 15236
gcvtoi 81558
gdeflate 210
gdivent 6086213
gdiventgs 1429
gdiventres 21875
gdiventsg 6084385
gdivmod 0
gdivround 261415
gdvd 3913
geq 1218293
geval 0
geval_gp 10129
gfloor 4229934
gfrac 91
gge 124174
ggrando 4711
ggt 132524
gimag 2644
gle 7623460
glt 6212244
gmod 7627089
gmodgs 16546
gmodsg 7406373
gmodulo 823859
gmodulsg 695114
gmodulss 600490
gne 23136624
gnot 259819
gppadicprec 105
gppoldegree 5089
gprecision 2504781
gpserprec 28
greal 83337
grndtoi 8828533
ground 993427
gshift 40238694
gsubst 228515
gsubst_expr 35
gsubstpol 84
gsubstvec 756
gtocol 182
gtocol0 1197
gtocolrev 0
gtocolrev0 252
gtopoly 69258
gtopolyrev 2424429
gtoser 212387
gtovec 245469
gtovec0 246512
gtovecpost 1148
gtovecpre 343
gtovecrev 7
gtovecrev0 266
gtovecsmall 1726294
gtovecsmall0 14322
gtovecsmallpost 84
gtovecsmallpre 84
gtrunc 889
gtrunc2n 10263188
gvar 97657606
gvar2 19904025
gvar9 48062
hqfeval 0
imag_i 350031
init_qf_apply 145753
init_vectopre 245
integ 350
integ_act 14
integser 10948
iscomplex 21
isinexact 128416981
isinexactreal 13244
isint 25347
isrationalzeroscalar 0
isrealappr 78743
issmall 7469
lift 96650
lift0 170931
lift_shallow 183376
liftall 126
liftall_shallow 945
liftint 119
liftint_shallow 546
liftpol 98
liftpol_shallow 135478
listdeflate 21
lookup 833
mkcoln 0
mkintn 13377
mkpoln 2353593
mkvecn 36211
mkvecsmalln 3858
modRr_safe 486319
mod_r 168
modrs 14
modsf 35
modsr 35
mulreal 11038194
multi_coeff 29372
numer 8233399
op_ReIm 1202248
padic_to_Q 8274
padic_to_Q_shallow 21
padicprec 4172
padicprec_relative 2030
polcoeff0 59654
polcoeff_i 161098
poldeflate 112
poldegree 9555
poleval 684525
pollead 3425
poltoser 213759
prec0 9674
precCOMPLEX 2016808
precREAL 786478
precision 1356690
precision0 3276
precrealexact 326756
qf_apply_RgM 538
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 6821499
recvar 329
rfractoser 151956
round0 3626
round_i 14354090
roundr 2682283
roundr_safe 6636148
scalarpol 4772125
scalarpol_shallow 243020
scalarser 167622
ser2pol_i 3327787
ser2rfrac 259
ser2rfrac_i 3227
ser_inv 294
ser_unscale 616
serdeflate 35
serprec 56
serreverse 49
sertoser 273
simplify 10611602
simplify_shallow 311863090
swapvar_act 21
tayl 7
tayl_act 7
toser_i 701156
triv_integ 35
trunc0 217
uu32toi 233583
var2_aux 8561
var2_polmod 1526
var2_rfrac 7035
variables_vec 14
variables_vecsmall 7
vdeflate 63
vec_padicprec 826
vec_padicprec_relative 357
vec_serprec 14
vecdenom 742

Generated by: LCOV version 1.11