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-bordeaux1.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 - gen1.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 17710-c8a39c8) Lines: 1775 1937 91.6 %
Date: 2015-03-31 Functions: 88 88 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1183 1442 82.0 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 93810
addRc 30171975
addRq 602
addTp 7
add_intmod_same 1012567
add_rfrac 2781641
add_rfrac_scal 8350033
add_scal 13650777
add_ser_scal 4354
addqf 14
addsub_frac 17181004
addsub_polmod 973
addsub_polmod_scal 2720698
addsub_pp 930265
conjvec 42
divRc 209391
divTp 63
div_T_scal 792592
div_intmod_same 28140
div_polmod_same 31941
div_rfrac 1186329
div_rfrac_pol 253134
div_rfrac_scal 270646
div_scal_T 9142297
div_scal_pol 8187464
div_scal_rfrac 1004057
div_scal_ser 588
div_ser 267225
div_ser_scal 5523
divcR 1409791
divfq 7
divpT 910
divpp 50096
divqf 28
ff_poltype 28364
fill_ser 116334
fix_rfrac 155414
gadd 782052615
gaddsg 2033665
gconj 527362
gdiv 88254563
gdivgs 2328863
ginv 7018875
gmul 2348095169
gmul2n 29272794
gmulsg 16021240
gred_frac2 13497160
gred_rfrac2 18173529
gred_rfrac2_i 43368776
gred_rfrac_simple 54135037
gsqr 871689954
gsub 1385534385
gsubsg 285924
inv_polmod 23741
kro_quad 21
mulRc 40157563
mulRc_direct 35
mulRq 1834
mulTp 77988
mul_gen_rfrac 160830
mul_intmod_same 2455839
mul_polmod 1386
mul_polmod_same 1636168
mul_polmod_scal 1162470
mul_rfrac 7743960
mul_rfrac_scal 9454207
mul_scal 55075790
mul_ser_scal 188679
mulcIR 724614
mulcc 47403374
mulcxI 1505756
mulcxmI 47852
mulpp 1144812
mulqf 14
mulqq 1344
mulrfrac 1092037
quad_polmod_conj 13433
quad_polmod_mul 1013119
quad_polmod_norm 13433
rfrac_denom_mul_scal 9405146
ser_add 36968
ser_normalize 56
serprec 73194
sqr_polmod 22347
sqr_ser_part 4242
sub_intmod_same 122264
warn_coercion 70

Generated by: LCOV version 1.9