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 20777-d2a9243) Lines: 2108 2279 92.5 %
Date: 2017-06-25 05:59:24 Functions: 212 221 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 2784736
QpV_to_QV 91
RgM_mulreal 0
RgX_cxeval 347811
RgX_deflate_max 30033
RgX_deflate_order 30145
RgX_degree 22701
RgX_integ 13748
ZX_deflate_max 41282
ZX_deflate_order 73657
_egal 52311934
_egal_i 52311934
_gtopoly 2501842
_polcoeff 130319
_quot 602
_quotfi 7
_quotfs 77
_quotri 7
_quotrs 28
_quotsf 35
_quotsr 70
_rfraccoeff 21
_sercoeff 12852
bitprecision0 567
ceil_safe 65504
ceilr 2787
centerlift 13454
centerlift0 105
centerliftii 9408
coefstoser 7
compo 320
deg1pol 537545
deg1pol_shallow 1908210
deg2pol_shallow 10684
degree 0
denom 9675589
deriv 104839
derivser 11865
diffop 3535
diffop0 42
diviiround 10753769
divrem 896
err_intformal 35
floor_safe 14611
gceil 16612
gcvtoi 91157
gdeflate 210
gdivent 6086864
gdiventgs 1443
gdiventres 26250
gdiventsg 6085008
gdivmod 0
gdivround 316526
gdvd 3955
geq 1092115
geval 0
geval_gp 10129
gfloor 4301587
gfrac 91
gge 127910
ggrando 4970
ggt 133179
gimag 2847
gle 7623364
glt 6091634
gmod 7811336
gmodgs 16614
gmodsg 7364659
gmodulo 1306636
gmodulsg 825510
gmodulss 599334
gne 51219819
gnot 273084
gppadicprec 105
gppoldegree 6384
gprecision 3155394
gpserprec 28
greal 83855
grndtoi 9043958
ground 1178241
gshift 41556599
gsubst 1600257
gsubst_expr 35
gsubstpol 84
gsubstvec 784
gtocol 182
gtocol0 1533
gtocolrev 0
gtocolrev0 252
gtopoly 70406
gtopolyrev 2431436
gtoser 1512
gtovec 241150
gtovec0 242634
gtovecpost 1155
gtovecpre 784
gtovecrev 7
gtovecrev0 266
gtovecsmall 1728660
gtovecsmall0 7406
gtovecsmallpost 84
gtovecsmallpre 84
gtrunc 924
gtrunc2n 12196521
gvar 104194481
gvar2 20470192
gvar9 48650
hqfeval 0
imag_i 371653
init_qf_apply 145683
init_vectopre 686
integ 350
integ_act 14
integser 12362
iscomplex 21
isinexact 128388489
isinexactreal 14581
isint 27307
isrationalzeroscalar 0
isrealappr 111225
issmall 7518
lift 691503
lift0 826769
lift_shallow 3687212
liftall 126
liftall_shallow 945
liftint 119
liftint_shallow 546
liftpol 4627
liftpol_shallow 780990
listdeflate 21
lookup 833
mkcoln 1330
mkintn 13741
mkpoln 2651782
mkvecn 252182
mkvecsmalln 19629
modRr_safe 578929
mod_r 168
modrs 14
modsf 35
modsr 35
mulreal 11024477
multi_coeff 30184
numer 8740969
op_ReIm 1278807
padic_to_Q 9863
padic_to_Q_shallow 21
padicprec 4172
padicprec_relative 2030
polcoeff0 13846
polcoeff_i 163968
poldeflate 112
poldegree 23821
poleval 1979168
pollead 7317
poltoser 98
prec0 10759
precCOMPLEX 4145925
precREAL 1288204
precision 2995701
precision0 3339
precrealexact 510421
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 553
quotfi 7
quotfs 77
quotrem 343
quotri 7
quotrs 14
quotsf 35
quotsr 35
real_i 7170247
recvar 525
rfractoser 42
round0 3703
round_i 14863625
roundr 2801916
roundr_safe 6831741
scalarpol 7035396
scalarpol_shallow 303579
scalarser 16737
ser2pol_i 3362138
ser2rfrac 259
ser2rfrac_i 4067
ser_inv 728
ser_unscale 1400
serdeflate 35
serequalXk 9142
serprec 56
serreverse 98
sertoser 273
simplify 10688770
simplify_shallow 377406342
swapvar_act 21
tayl 7
tayl_act 7
toser_i 516589
triv_integ 35
trunc0 217
uu32toi 222818
var2_aux 8540
var2_polmod 1505
var2_rfrac 7035
variables_vec 21
variables_vecsmall 21
vdeflate 63
vec_padicprec 826
vec_padicprec_relative 357
vec_serprec 14
vecdenom 721

Generated by: LCOV version 1.11