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 17097-9391e68) Lines: 1737 1919 90.5 %
Date: 2014-11-21 Functions: 86 87 98.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1155 1428 80.9 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 20
addQp 50230
addRc 18669679
addRq 415
addTp 5
add_intmod_same 722006
add_rfrac 2062658
add_rfrac_scal 6127894
add_scal 9627416
add_ser_scal 2995
addqf 10
addsub_frac 5148427
addsub_polmod 0
addsub_polmod_scal 423314
addsub_pp 155370
conjvec 30
divRc 160151
divTp 45
div_T_scal 563939
div_intmod_same 19835
div_polmod_same 12840
div_rfrac 874361
div_rfrac_pol 188013
div_rfrac_scal 205876
div_scal_T 6612103
div_scal_pol 5918745
div_scal_rfrac 725548
div_scal_ser 390
div_ser 190505
div_ser_scal 3495
divcR 1182866
divfq 5
divpT 635
divpp 28795
divqf 20
ff_poltype 19305
fill_ser 82207
fix_rfrac 110745
gadd 515363566
gaddsg 1881515
gconj 380163
gdiv 61716802
gdivgs 2994018
ginv 5169725
gmul 1566704127
gmul2n 20131834
gmulsg 11051422
gred_frac2 7682894
gred_rfrac2 13290974
gred_rfrac2_i 31527139
gred_rfrac_simple 39012460
gsqr 615674220
gsub 939955164
gsubsg 247131
inv_polmod 5978
kro_quad 15
mulRc 25909891
mulRc_direct 25
mulRq 1300
mulTp 27850
mul_gen_rfrac 122462
mul_intmod_same 1740829
mul_polmod 5
mul_polmod_same 352792
mul_polmod_scal 46246
mul_rfrac 5596330
mul_rfrac_scal 6855502
mul_scal 38814203
mul_ser_scal 134957
mulcIR 476250
mulcc 34510721
mulcxI 1166670
mulcxmI 34180
mulpp 214025
mulqf 10
mulqq 960
mulrfrac 700740
quad_polmod_conj 3175
quad_polmod_mul 93187
quad_polmod_norm 3175
rfrac_denom_mul_scal 6831309
ser_add 25617
ser_normalize 40
serprec 50704
sqr_polmod 13200
sqr_ser_part 2920
sub_intmod_same 87814

Generated by: LCOV version 1.9