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 17931-6d987be) Lines: 1774 1934 91.7 %
Date: 2015-07-29 Functions: 88 88 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1183 1440 82.2 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 129725
addRc 40953941
addRq 679
addTp 7
add_intmod_same 1013054
add_rfrac 2781641
add_rfrac_scal 8350047
add_scal 13705728
add_ser_scal 6027
addqf 21
addsub_frac 19612827
addsub_polmod 973
addsub_polmod_scal 2720699
addsub_pp 939722
conjvec 42
divRc 340567
divTp 70
div_T_scal 879535
div_intmod_same 28137
div_polmod_same 31955
div_rfrac 1186329
div_rfrac_pol 253134
div_rfrac_scal 270646
div_scal_T 9143326
div_scal_pol 8187597
div_scal_rfrac 1004057
div_scal_ser 1498
div_ser 330003
div_ser_scal 90820
divcR 2161214
divfq 7
divpT 910
divpp 84647
divqf 28
ff_poltype 28700
fill_ser 374430
fix_rfrac 155526
gadd 759153474
gaddsg 13851652
gconj 561896
gdiv 96714137
gdivgs 2594540
ginv 7373914
gmul 2367081418
gmul2n 30697820
gmulsg 18682539
gred_frac2 13836655
gred_rfrac2 18173809
gred_rfrac2_i 43369014
gred_rfrac_simple 54135190
gsqr 849145622
gsub 1418644107
gsubsg 295536
inv_polmod 23740
kro_quad 21
mulRc 41414879
mulRc_direct 35
mulRq 1834
mulTp 88203
mul_gen_rfrac 160830
mul_intmod_same 2457781
mul_polmod 1386
mul_polmod_same 1636137
mul_polmod_scal 1162504
mul_rfrac 7743960
mul_rfrac_scal 9454165
mul_scal 55230996
mul_ser_scal 189652
mulcIR 806381
mulcc 64801445
mulcxI 1983996
mulcxmI 47838
mulpp 1190235
mulqf 14
mulqq 1344
mulrfrac 946082
quad_polmod_conj 13433
quad_polmod_mul 1013119
quad_polmod_norm 13433
rfrac_denom_mul_scal 9405160
ser_add 251082
ser_normalize 56
serprec 501422
sqr_polmod 22347
sqr_ser_part 5208
sub_intmod_same 122305
warn_coercion 70

Generated by: LCOV version 1.9