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 20459-9710128) Lines: 2078 2249 92.4 %
Date: 2017-04-29 05:33:44 Functions: 210 219 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Itos 2398380
QpV_to_QV 78
RgM_mulreal 0
RgX_cxeval 247206
RgX_deflate_max 12732
RgX_deflate_order 12828
RgX_degree 18942
RgX_integ 414
ZX_deflate_max 20214
ZX_deflate_order 41544
_egal 20832292
_egal_i 20832292
_gtopoly 2143842
_polcoeff 111684
_quot 516
_quotfi 6
_quotfs 66
_quotri 6
_quotrs 24
_quotsf 30
_quotsr 60
_rfraccoeff 18
_sercoeff 10818
bitprecision0 486
ceil_safe 54912
ceilr 2508
centerlift 11532
centerlift0 90
centerliftii 8064
coefstoser 6
compo 262
deg1pol 450959
deg1pol_shallow 1683160
degree 0
denom 7812534
deriv 89418
derivser 9588
diffop 3030
diffop0 36
diviiround 9819263
divrem 768
err_intformal 30
floor_safe 7044
gceil 14412
gcvtoi 71406
gdeflate 180
gdivent 5216844
gdiventgs 1236
gdiventres 20136
gdiventsg 5215254
gdivmod 0
gdivround 224628
gdvd 3372
geq 935854
geval 0
geval_gp 8682
gfloor 3677966
gfrac 78
gge 109606
ggrando 4140
ggt 112866
gimag 2436
gle 6534282
glt 5220420
gmod 6528078
gmodgs 14465
gmodsg 6312552
gmodulo 748283
gmodulsg 640744
gmodulss 513606
gne 19896438
gnot 233556
gppadicprec 90
gppoldegree 5418
gprecision 2033610
gpserprec 24
greal 71688
grndtoi 7534242
ground 850770
gshift 34679920
gsubst 763680
gsubst_expr 30
gsubstpol 72
gsubstvec 648
gtocol 156
gtocol0 1026
gtocolrev 0
gtocolrev0 216
gtopoly 59760
gtopolyrev 2084082
gtoser 408
gtovec 206694
gtovec0 207588
gtovecpost 990
gtovecpre 294
gtovecrev 6
gtovecrev0 228
gtovecsmall 1476246
gtovecsmall0 6336
gtovecsmallpost 72
gtovecsmallpre 72
gtrunc 762
gtrunc2n 8694366
gvar 84632937
gvar2 17217786
gvar9 40014
hqfeval 0
imag_i 300492
init_qf_apply 124854
init_vectopre 210
integ 300
integ_act 12
integser 10014
iscomplex 18
isinexact 105725580
isinexactreal 12498
isint 22440
isrationalzeroscalar 0
isrealappr 71058
issmall 6444
lift 86517
lift0 195319
lift_shallow 168030
liftall 108
liftall_shallow 810
liftint 102
liftint_shallow 468
liftpol 3942
liftpol_shallow 139794
listdeflate 18
lookup 714
mkcoln 18
mkintn 11544
mkpoln 2041415
mkvecn 32196
mkvecsmalln 2022
modRr_safe 437814
mod_r 144
modrs 12
modsf 30
modsr 30
mulreal 9428442
multi_coeff 25548
numer 7044762
op_ReIm 1012920
padic_to_Q 7128
padic_to_Q_shallow 18
padicprec 3576
padicprec_relative 1740
polcoeff0 11586
polcoeff_i 140478
poldeflate 96
poldegree 9654
poleval 1193118
pollead 3036
poltoser 84
prec0 9060
precCOMPLEX 3112224
precREAL 824694
precision 2338422
precision0 2862
precrealexact 434502
qf_apply_RgM 384
qf_apply_ZM 124470
qfb_apply_ZM 6
qfbeval 12
qfbevalb 6
qfbil 0
qfeval 18
qfeval0 114
qfevalb 18
qfnorm 0
qfnorm0 66
quot 474
quotfi 6
quotfs 66
quotrem 294
quotri 6
quotrs 12
quotsf 30
quotsr 30
real_i 5759157
recvar 282
rfractoser 36
round0 3168
round_i 12305206
roundr 2299530
roundr_safe 5649874
scalarpol 4099092
scalarpol_shallow 270042
scalarser 14532
ser2pol_i 3022212
ser2rfrac 222
ser2rfrac_i 3096
ser_inv 624
ser_unscale 528
serdeflate 30
serprec 48
serreverse 84
sertoser 234
simplify 9135780
simplify_shallow 265267294
swapvar_act 18
tayl 6
tayl_act 6
toser_i 396126
triv_integ 30
trunc0 186
uu32toi 182512
var2_aux 7146
var2_polmod 1116
var2_rfrac 6030
variables_vec 12
variables_vecsmall 6
vdeflate 54
vec_padicprec 708
vec_padicprec_relative 306
vec_serprec 12
vecdenom 618

Generated by: LCOV version 1.11