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 21904-e879394) Lines: 2118 2283 92.8 %
Date: 2018-02-17 06:15:39 Functions: 212 221 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
RgM_mulreal 0
degree 0
gdivmod 0
geval 0
gtocolrev 0
hqfeval 0
isrationalzeroscalar 0
qfbil 0
qfnorm 0
_quotfi 7
_quotri 7
coefstoser 7
gtovecrev 7
qfb_apply_ZM 7
qfbevalb 7
quotfi 7
quotri 7
tayl 7
tayl_act 7
integ_act 14
modrs 14
qfbeval 14
quotrs 14
vec_serprec 14
_rfraccoeff 21
iscomplex 21
listdeflate 21
padic_to_Q_shallow 21
qfevalb 21
swapvar_act 21
variables_vec 21
_quotrs 28
gpserprec 28
_quotsf 35
err_intformal 35
gsubst_expr 35
modsf 35
modsr 35
quotsf 35
quotsr 35
serdeflate 35
triv_integ 35
diffop0 42
rfractoser 42
qfeval 49
serprec 56
vdeflate 63
_quotsr 70
_quotfs 77
quotfs 77
gtovecsmallpost 84
gtovecsmallpre 84
gfrac 91
poltoser 98
serreverse 98
gppadicprec 105
qfnorm0 105
centerlift0 112
liftint 119
QpV_to_QV 126
qfeval0 161
mod_r 168
gtocol 182
trunc0 217
gtocolrev0 252
gtovecrev0 266
liftall 273
sertoser 273
compo 320
integ 350
vec_padicprec_relative 357
ser2rfrac 385
qf_apply_RgM 447
liftint_shallow 546
bitprecision0 567
ser_inv 651
gtoser 665
variables_vecsmall 672
gsubstpol 686
poldeflate 714
gdeflate 812
vec_padicprec 826
lookup 833
quotrem 847
divrem 896
gsubstvec 938
quot 1057
_quot 1106
gtrunc 1141
gtovecpost 1155
mkcoln 1330
gdiventgs 1527
var2_polmod 2002
padicprec_relative 2079
liftall_shallow 2604
ser_unscale 2646
gimag 2917
init_vectopre 3087
ceilr 3112
gtovecpre 3185
precision0 3374
diffop 3535
gtocol0 3724
round0 3850
gdvd 4004
padicprec 4172
liftpol 4634
ggrando 5145
ser2rfrac_i 5180
gppoldegree 6384
pollead 6638
var2_rfrac 7035
gtovecsmall0 7343
issmall 7518
vecdenom 8344
padic_to_Q 8785
var2_aux 9037
serequalXk 9394
centerliftii 9471
geval_gp 10759
_sercoeff 11718
deg2pol_shallow 11832
derivser 11977
integser 12313
centerlift 13664
RgX_integ 14084
mkintn 14105
floor_safe 14438
scalarser 15113
polcoeff0 15127
gceil 17189
recvar 21644
poldegree 23366
mkvecsmalln 24382
isint 27566
RgX_degree 33152
gdiventres 34020
RgX_deflate_max 35078
RgX_deflate_order 35729
ZX_deflate_max 42829
multi_coeff 49182
gvar9 53732
greal 66033
gtopoly 71868
ZX_deflate_order 75057
deriv 112021
isrealappr 126424
ggt 133291
gge 135302
qf_apply_ZM 145243
init_qf_apply 145690
ceil_safe 165379
gcvtoi 190852
_polcoeff 200816
mkvecn 239512
gtovec 241388
gtovec0 245273
lift 246251
polcoeff_i 250390
uu32toi 312184
gnot 315882
scalarpol_shallow 338122
gdivround 345282
RgX_cxeval 361693
lift0 413542
imag_i 436130
lift_shallow 439492
precrealexact 510582
toser_i 550217
modRr_safe 574703
deg1pol 587158
prec0 640011
gmodulss 656012
gmodulsg 830963
gmodgs 1049144
gmodulo 1061503
ground 1183848
op_ReIm 1282456
isinexactreal 1580376
geq 1784737
gtovecsmall 2066655
gsubst 2094497
poleval 2359252
deg1pol_shallow 2428982
gtopolyrev 2433039
_gtopoly 2504907
mkpoln 2690958
Itos 3298109
ser2pol_i 3439614
roundr 4075785
gprecision 4213148
gfloor 4371068
precCOMPLEX 5203994
scalarpol 5286319
gdiventsg 6085092
gdivent 6086948
glt 6092488
real_i 7201339
roundr_safe 7253686
gmodsg 7365322
gle 7628166
gmod 7880599
numer 8742679
grndtoi 9461869
denom 9699237
liftpol_shallow 9785589
simplify 10683908
mulreal 11051359
diviiround 11212140
gtrunc2n 13337354
round_i 16067231
gvar2 20473725
precREAL 35618813
precision 37321615
gshift 39169966
gne 60215512
_egal 62000249
_egal_i 62000249
gvar 110305904
isinexact 129693459
simplify_shallow 407544129

Generated by: LCOV version 1.11