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 17774-15dbd24) Lines: 1774 1937 91.6 %
Date: 2015-04-27 Functions: 88 88 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1181 1442 81.9 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 94488
addRc 40727620
addRq 602
addTp 7
add_intmod_same 1012482
add_rfrac 2781641
add_rfrac_scal 8350047
add_scal 13652459
add_ser_scal 5782
addqf 14
addsub_frac 17343952
addsub_polmod 973
addsub_polmod_scal 2720692
addsub_pp 939008
conjvec 42
divRc 363491
divTp 63
div_T_scal 877771
div_intmod_same 28128
div_polmod_same 31955
div_rfrac 1186329
div_rfrac_pol 253134
div_rfrac_scal 270646
div_scal_T 9143088
div_scal_pol 8187541
div_scal_rfrac 1004057
div_scal_ser 1302
div_ser 329051
div_ser_scal 90729
divcR 2131002
divfq 7
divpT 910
divpp 50190
divqf 28
ff_poltype 28378
fill_ser 374311
fix_rfrac 155414
gadd 820728652
gaddsg 13611725
gconj 557766
gdiv 94735904
gdivgs 2395993
ginv 7198218
gmul 2434342872
gmul2n 29321252
gmulsg 16187459
gred_frac2 13801368
gred_rfrac2 18173529
gred_rfrac2_i 43368776
gred_rfrac_simple 54135043
gsqr 872611080
gsub 1405221928
gsubsg 288200
inv_polmod 23740
kro_quad 21
mulRc 41042213
mulRc_direct 35
mulRq 1834
mulTp 78579
mul_gen_rfrac 160830
mul_intmod_same 2455913
mul_polmod 1386
mul_polmod_same 1636137
mul_polmod_scal 1162504
mul_rfrac 7743960
mul_rfrac_scal 9454207
mul_scal 55079220
mul_ser_scal 189631
mulcIR 724614
mulcc 63883121
mulcxI 1505861
mulcxmI 47852
mulpp 1155416
mulqf 14
mulqq 1344
mulrfrac 1262960
quad_polmod_conj 13433
quad_polmod_mul 1013119
quad_polmod_norm 13433
rfrac_denom_mul_scal 9405153
ser_add 250298
ser_normalize 56
serprec 499854
sqr_polmod 22347
sqr_ser_part 4543
sub_intmod_same 122233
warn_coercion 70

Generated by: LCOV version 1.9