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 17960-0cd23ba) Lines: 1776 1934 91.8 %
Date: 2015-09-03 Functions: 88 88 100.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1187 1440 82.4 %

Function Name Sort by function name Hit count Sort by hit count
Zp_nosquare_m1 28
addQp 129741
addRc 40953941
addRq 679
addTp 7
add_intmod_same 1012984
add_rfrac 2782887
add_rfrac_scal 8351104
add_scal 13789412
add_ser_scal 6111
addqf 21
addsub_frac 19773248
addsub_polmod 973
addsub_polmod_scal 2722232
addsub_pp 939722
conjvec 42
divRc 340567
divTp 70
div_T_scal 902215
div_intmod_same 28128
div_polmod_same 31955
div_rfrac 1186595
div_rfrac_pol 253260
div_rfrac_scal 270646
div_scal_T 9145146
div_scal_pol 8189417
div_scal_rfrac 1004057
div_scal_ser 1498
div_ser 329975
div_ser_scal 90820
divcR 2161214
divfq 7
divpT 910
divpp 84658
divqf 28
ff_poltype 29967
fill_ser 374479
fix_rfrac 158837
gadd 794241177
gaddsg 13851919
gconj 561896
gdiv 97362562
gdivgs 2607735
ginv 8311914
gmul 2378885351
gmul2n 30819428
gmulsg 18742084
gred_frac2 13900644
gred_rfrac2 18232273
gred_rfrac2_i 43433008
gred_rfrac_simple 54147167
gsqr 855168087
gsub 1452633691
gsubsg 295697
inv_polmod 23740
kro_quad 21
mulRc 41414879
mulRc_direct 35
mulRq 1834
mulTp 88203
mul_gen_rfrac 160830
mul_intmod_same 2457662
mul_polmod 1386
mul_polmod_same 1638370
mul_polmod_scal 1163848
mul_rfrac 7745024
mul_rfrac_scal 9457441
mul_scal 57528866
mul_ser_scal 189729
mulcIR 806381
mulcc 64801445
mulcxI 1983996
mulcxmI 47838
mulpp 1190248
mulqf 14
mulqq 1344
mulrfrac 946082
quad_polmod_conj 13433
quad_polmod_mul 1013119
quad_polmod_norm 13433
rfrac_denom_mul_scal 9413448
ser_add 251061
ser_normalize 56
serprec 501380
sqr_polmod 23369
sqr_ser_part 5229
sub_intmod_same 122281
warn_coercion 70

Generated by: LCOV version 1.9