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 16741-1378b1c) Lines: 1738 1920 90.5 %
Date: 2014-08-17 Functions: 85 86 98.8 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1149 1426 80.6 %

Function Name Sort by function name Hit count Sort by hit count
NORMALIZE_i 1275
Zp_nosquare_m1 20
addQp 49190
addRc 18645050
addRq 690
addTp 5
add_intmod_same 1007417
add_rfrac 2063248
add_rfrac_scal 6132999
add_scal 9598358
add_ser_scal 3885
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 192015
div_ser_scal 3480
divcR 1156716
divfq 5
divpT 660
divpp 28395
divqf 20
ff_poltype 14110
fill_ser 98562
fix_rfrac 116915
gadd 482286227
gaddsg 1947524
gconj 359704
gdiv 62570657
gdivgs 3044898
ginv 5186055
gmul 1543619469
gmul2n 20697995
gmulsg 10673503
gred_frac2 8178451
gred_rfrac2 13292749
gred_rfrac2_i 31535529
gred_rfrac_simple 39032670
gsqr 611251426
gsub 936358427
gsubsg 248129
inv_polmod 5273
kro_quad 15
mulRc 26863729
mulRc_direct 25
mulRq 2165
mulTp 23990
mul_gen_rfrac 122462
mul_intmod_same 2325264
mul_polmod 5
mul_polmod_same 275365
mul_polmod_scal 34936
mul_rfrac 5598195
mul_rfrac_scal 6858467
mul_scal 38540345
mul_ser_scal 118572
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_normalize 45
sqr_polmod 10686
sqr_ser_part 4750
sub_intmod_same 288531

Generated by: LCOV version 1.9