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 17837-9309d7c) Lines: 1773 1934 91.7 %
Date: 2015-05-22 Functions: 88 88 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1182 1440 82.1 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 94485
addRc 40757052
addRq 679
addTp 7
add_intmod_same 1012608
add_rfrac 2781641
add_rfrac_scal 8350047
add_scal 13652885
add_ser_scal 5999
addqf 21
addsub_frac 19611105
addsub_polmod 973
addsub_polmod_scal 2720692
addsub_pp 939008
conjvec 42
divRc 340567
divTp 70
div_T_scal 877911
div_intmod_same 28144
div_polmod_same 31955
div_rfrac 1186329
div_rfrac_pol 253134
div_rfrac_scal 270646
div_scal_T 9143284
div_scal_pol 8187541
div_scal_rfrac 1004057
div_scal_ser 1498
div_ser 330003
div_ser_scal 90820
divcR 2071446
divfq 7
divpT 910
divpp 50182
divqf 28
ff_poltype 28378
fill_ser 374402
fix_rfrac 155519
gadd 749135623
gaddsg 13814352
gconj 561014
gdiv 95963573
gdivgs 2554901
ginv 7282676
gmul 2358912374
gmul2n 29483955
gmulsg 18335131
gred_frac2 13825285
gred_rfrac2 18173634
gred_rfrac2_i 43368839
gred_rfrac_simple 54135148
gsqr 848722517
gsub 1411815564
gsubsg 295536
inv_polmod 23740
kro_quad 21
mulRc 41117778
mulRc_direct 35
mulRq 1834
mulTp 78590
mul_gen_rfrac 160830
mul_intmod_same 2456154
mul_polmod 1386
mul_polmod_same 1636137
mul_polmod_scal 1162504
mul_rfrac 7743960
mul_rfrac_scal 9454165
mul_scal 55130550
mul_ser_scal 189638
mulcIR 750829
mulcc 63999147
mulcxI 1685971
mulcxmI 47838
mulpp 1155404
mulqf 14
mulqq 1344
mulrfrac 938830
quad_polmod_conj 13433
quad_polmod_mul 1013119
quad_polmod_norm 13433
rfrac_denom_mul_scal 9405153
ser_add 251054
ser_normalize 56
serprec 501366
sqr_polmod 22347
sqr_ser_part 5208
sub_intmod_same 122279
warn_coercion 70

Generated by: LCOV version 1.9