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 16746-c2cb716) Lines: 1736 1918 90.5 %
Date: 2014-08-31 Functions: 86 87 98.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1148 1424 80.6 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 20
addQp 49190
addRc 18645050
addRq 690
addTp 5
add_intmod_same 1007427
add_rfrac 2063248
add_rfrac_scal 6132999
add_scal 9596708
add_ser_scal 5010
addqf 10
addsub_frac 5017174
addsub_polmod 0
addsub_polmod_scal 310243
addsub_pp 148555
conjvec 35
divRc 158430
divTp 45
div_T_scal 561384
div_intmod_same 20435
div_polmod_same 13520
div_rfrac 874521
div_rfrac_pol 188093
div_rfrac_scal 205876
div_scal_T 6612188
div_scal_pol 5918765
div_scal_rfrac 725548
div_scal_ser 410
div_ser 192950
div_ser_scal 3480
divcR 1156716
divfq 5
divpT 660
divpp 28395
divqf 20
ff_poltype 14110
fill_ser 98562
fix_rfrac 116915
gadd 482287927
gaddsg 1947524
gconj 359704
gdiv 62527182
gdivgs 3044898
ginv 5186055
gmul 1543632064
gmul2n 20697995
gmulsg 10673503
gred_frac2 8131076
gred_rfrac2 13291019
gred_rfrac2_i 31533799
gred_rfrac_simple 39032670
gsqr 611251701
gsub 936358402
gsubsg 248129
inv_polmod 5273
kro_quad 15
mulRc 26863729
mulRc_direct 25
mulRq 2165
mulTp 23990
mul_gen_rfrac 122462
mul_intmod_same 2325304
mul_polmod 5
mul_polmod_same 275365
mul_polmod_scal 34936
mul_rfrac 5598195
mul_rfrac_scal 6858467
mul_scal 38542135
mul_ser_scal 125932
mulcIR 462184
mulcc 35931245
mulcxI 1155641
mulcxmI 33475
mulpp 204325
mulqf 10
mulqq 1835
mulrfrac 704485
quad_polmod_conj 2195
quad_polmod_mul 12954
quad_polmod_norm 2195
rfrac_denom_mul_scal 6833534
ser_add 35427
ser_normalize 45
serprec 68264
sqr_polmod 10686
sqr_ser_part 4745
sub_intmod_same 288531

Generated by: LCOV version 1.9