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 21501-1931cb9) Lines: 2118 2283 92.8 %
Date: 2017-12-16 06:20:36 Functions: 212 221 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 3300643
QpV_to_QV 126
RgM_mulreal 0
RgX_cxeval 354089
RgX_deflate_max 34440
RgX_deflate_order 35091
RgX_degree 34132
RgX_integ 14084
ZX_deflate_max 41464
ZX_deflate_order 72936
_egal 53485907
_egal_i 53485907
_gtopoly 2506336
_polcoeff 200095
_quot 994
_quotfi 7
_quotfs 77
_quotri 7
_quotrs 28
_quotsf 35
_quotsr 70
_rfraccoeff 21
_sercoeff 11417
bitprecision0 567
ceil_safe 154852
ceilr 2936
centerlift 13664
centerlift0 112
centerliftii 9471
coefstoser 7
compo 312
deg1pol 587104
deg1pol_shallow 2512324
deg2pol_shallow 11286
degree 0
denom 9696388
deriv 109508
derivser 11837
diffop 3535
diffop0 42
diviiround 11292738
divrem 896
err_intformal 35
floor_safe 14349
gceil 16833
gcvtoi 180243
gdeflate 812
gdivent 6086955
gdiventgs 1527
gdiventres 29358
gdiventsg 6085099
gdivmod 0
gdivround 317282
gdvd 3955
geq 1784026
geval 0
geval_gp 10129
gfloor 4370820
gfrac 91
gge 135263
ggrando 5061
ggt 133287
gimag 2917
gle 7628128
glt 6091622
gmod 7863836
gmodgs 1049004
gmodsg 7365099
gmodulo 1060371
gmodulsg 831007
gmodulss 655956
gne 51701881
gnot 315854
gppadicprec 105
gppoldegree 6384
gprecision 3141157
gpserprec 28
greal 65788
grndtoi 9371938
ground 1175147
gshift 39094479
gsubst 2703072
gsubst_expr 35
gsubstpol 686
gsubstvec 938
gtocol 182
gtocol0 2863
gtocolrev 0
gtocolrev0 252
gtopoly 70574
gtopolyrev 2435762
gtoser 665
gtovec 241332
gtovec0 244314
gtovecpost 1155
gtovecpre 2282
gtovecrev 7
gtovecrev0 266
gtovecsmall 2050177
gtovecsmall0 7322
gtovecsmallpost 84
gtovecsmallpre 84
gtrunc 1148
gtrunc2n 13192337
gvar 109534255
gvar2 20473221
gvar9 53522
hqfeval 0
imag_i 423572
init_qf_apply 145683
init_vectopre 2184
integ 350
integ_act 14
integser 12180
iscomplex 21
isinexact 129689785
isinexactreal 1580376
isint 27566
isrationalzeroscalar 0
isrealappr 124029
issmall 7518
lift 243704
lift0 410987
lift_shallow 445869
liftall 273
liftall_shallow 2604
liftint 119
liftint_shallow 546
liftpol 4634
liftpol_shallow 9981635
listdeflate 21
lookup 833
mkcoln 1330
mkintn 14105
mkpoln 2377345
mkvecn 251762
mkvecsmalln 28302
modRr_safe 575368
mod_r 168
modrs 14
modsf 35
modsr 35
mulreal 11048761
multi_coeff 49413
numer 8742175
op_ReIm 1282865
padic_to_Q 8785
padic_to_Q_shallow 21
padicprec 4172
padicprec_relative 2079
polcoeff0 15120
polcoeff_i 250607
poldeflate 714
poldegree 23352
poleval 2930167
pollead 6190
poltoser 98
prec0 912331
precCOMPLEX 4149728
precREAL 40016763
precision 41733604
precision0 3374
precrealexact 510610
qf_apply_RgM 447
qf_apply_ZM 145236
qfb_apply_ZM 7
qfbeval 14
qfbevalb 7
qfbil 0
qfeval 49
qfeval0 161
qfevalb 21
qfnorm 0
qfnorm0 105
quot 945
quotfi 7
quotfs 77
quotrem 735
quotri 7
quotrs 14
quotsf 35
quotsr 35
real_i 7186344
recvar 17381
rfractoser 42
round0 3850
round_i 16204108
roundr 4015407
roundr_safe 7476262
scalarpol 5279238
scalarpol_shallow 338571
scalarser 15099
ser2pol_i 3432390
ser2rfrac 392
ser2rfrac_i 5180
ser_inv 651
ser_unscale 2646
serdeflate 35
serequalXk 9359
serprec 56
serreverse 98
sertoser 273
simplify 10683453
simplify_shallow 389917184
swapvar_act 21
tayl 7
tayl_act 7
toser_i 548772
triv_integ 35
trunc0 217
uu32toi 257835
var2_aux 9009
var2_polmod 1974
var2_rfrac 7035
variables_vec 21
variables_vecsmall 434
vdeflate 63
vec_padicprec 826
vec_padicprec_relative 357
vec_serprec 14
vecdenom 7560

Generated by: LCOV version 1.11