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 20924-e159ed0) Lines: 2108 2280 92.5 %
Date: 2017-08-21 06:23:16 Functions: 212 221 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 3174783
QpV_to_QV 91
RgM_mulreal 0
RgX_cxeval 348679
RgX_deflate_max 33375
RgX_deflate_order 34089
RgX_degree 34006
RgX_integ 13748
ZX_deflate_max 42703
ZX_deflate_order 73538
_egal 52361052
_egal_i 52361052
_gtopoly 2501793
_polcoeff 195727
_quot 602
_quotfi 7
_quotfs 77
_quotri 7
_quotrs 28
_quotsf 35
_quotsr 70
_rfraccoeff 21
_sercoeff 12880
bitprecision0 567
ceil_safe 64971
ceilr 2921
centerlift 13664
centerlift0 112
centerliftii 9471
coefstoser 7
compo 320
deg1pol 540352
deg1pol_shallow 1915999
deg2pol_shallow 11286
degree 0
denom 9719145
deriv 109438
derivser 11865
diffop 3535
diffop0 42
diviiround 11073907
divrem 896
err_intformal 35
floor_safe 14611
gceil 16746
gcvtoi 90624
gdeflate 812
gdivent 6086871
gdiventgs 1499
gdiventres 26250
gdiventsg 6085015
gdivmod 0
gdivround 316953
gdvd 3955
geq 1095733
geval 0
geval_gp 10129
gfloor 4315591
gfrac 91
gge 127911
ggrando 4998
ggt 133179
gimag 2847
gle 7623367
glt 6091634
gmod 7880513
gmodgs 16614
gmodsg 7364659
gmodulo 1328718
gmodulsg 833364
gmodulss 599264
gne 51265319
gnot 353584
gppadicprec 105
gppoldegree 6384
gprecision 3152111
gpserprec 28
greal 83974
grndtoi 9045456
ground 1179984
gshift 38536953
gsubst 1649691
gsubst_expr 35
gsubstpol 686
gsubstvec 938
gtocol 182
gtocol0 1631
gtocolrev 0
gtocolrev0 252
gtopoly 70357
gtopolyrev 2431436
gtoser 1512
gtovec 241150
gtovec0 242753
gtovecpost 1155
gtovecpre 903
gtovecrev 7
gtovecrev0 266
gtovecsmall 1974185
gtovecsmall0 7406
gtovecsmallpost 84
gtovecsmallpre 84
gtrunc 1015
gtrunc2n 13075543
gvar 105228188
gvar2 20472857
gvar9 52752
hqfeval 0
imag_i 372241
init_qf_apply 145683
init_vectopre 805
integ 350
integ_act 14
integser 12362
iscomplex 21
isinexact 130040593
isinexactreal 1580390
isint 27307
isrationalzeroscalar 0
isrealappr 122947
issmall 7518
lift 666725
lift0 802145
lift_shallow 3700883
liftall 126
liftall_shallow 945
liftint 119
liftint_shallow 546
liftpol 4627
liftpol_shallow 3798598
listdeflate 21
lookup 833
mkcoln 1330
mkintn 13923
mkpoln 2664770
mkvecn 247856
mkvecsmalln 19944
modRr_safe 578152
mod_r 168
modrs 14
modsf 35
modsr 35
mulreal 11043277
multi_coeff 48454
numer 8784133
op_ReIm 1278275
padic_to_Q 8498
padic_to_Q_shallow 21
padicprec 4172
padicprec_relative 2030
polcoeff0 14742
polcoeff_i 247870
poldeflate 714
poldegree 23821
poleval 2014399
pollead 7436
poltoser 98
prec0 326943
precCOMPLEX 4143269
precREAL 8612254
precision 10318397
precision0 3339
precrealexact 510428
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 7169365
recvar 525
rfractoser 42
round0 3703
round_i 15127199
roundr 3046349
roundr_safe 6852482
scalarpol 7184492
scalarpol_shallow 313252
scalarser 16737
ser2pol_i 3362355
ser2rfrac 259
ser2rfrac_i 4067
ser_inv 728
ser_unscale 1666
serdeflate 35
serequalXk 9142
serprec 56
serreverse 98
sertoser 273
simplify 10713340
simplify_shallow 383275575
swapvar_act 21
tayl 7
tayl_act 7
toser_i 517234
triv_integ 35
trunc0 217
uu32toi 253936
var2_aux 8862
var2_polmod 1827
var2_rfrac 7035
variables_vec 21
variables_vecsmall 21
vdeflate 63
vec_padicprec 826
vec_padicprec_relative 357
vec_serprec 14
vecdenom 819

Generated by: LCOV version 1.11