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 17236-ec2ebc9) Lines: 1749 1919 91.1 %
Date: 2014-12-19 Functions: 87 87 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1164 1428 81.5 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 70336
addRc 32390425
addRq 581
addTp 7
add_intmod_same 1009600
add_rfrac 2781648
add_rfrac_scal 8349368
add_scal 13345894
add_ser_scal 4221
addqf 14
addsub_frac 14513414
addsub_polmod 616
addsub_polmod_scal 2658067
addsub_pp 217518
conjvec 42
divRc 216318
divTp 63
div_T_scal 789469
div_intmod_same 27804
div_polmod_same 31962
div_rfrac 1188765
div_rfrac_pol 253113
div_rfrac_scal 270996
div_scal_T 9146553
div_scal_pol 8187846
div_scal_rfrac 1003766
div_scal_ser 553
div_ser 267106
div_ser_scal 5523
divcR 1667727
divfq 7
divpT 889
divpp 40313
divqf 28
ff_poltype 28245
fill_ser 117013
fix_rfrac 155463
gadd 890893076
gaddsg 2654385
gconj 531961
gdiv 85816089
gdivgs 4210170
ginv 7221034
gmul 2378587754
gmul2n 28807385
gmulsg 14897459
gred_frac2 11447552
gred_rfrac2 18290004
gred_rfrac2_i 43548856
gred_rfrac_simple 54133825
gsqr 947499283
gsub 1325060297
gsubsg 296077
inv_polmod 23285
kro_quad 21
mulRc 40759830
mulRc_direct 35
mulRq 1820
mulTp 39004
mul_gen_rfrac 160830
mul_intmod_same 2435580
mul_polmod 1148
mul_polmod_same 1635850
mul_polmod_scal 1054179
mul_rfrac 7746396
mul_rfrac_scal 9512961
mul_scal 54518958
mul_ser_scal 189008
mulcIR 691756
mulcc 48585928
mulcxI 1682800
mulcxmI 47852
mulpp 299649
mulqf 14
mulqq 1344
mulrfrac 994749
quad_polmod_conj 12481
quad_polmod_mul 987751
quad_polmod_norm 12481
rfrac_denom_mul_scal 9374248
ser_add 37542
ser_normalize 56
serprec 74342
sqr_polmod 21703
sqr_ser_part 4151
sub_intmod_same 121272

Generated by: LCOV version 1.9