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-bordeaux.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 - nffactor.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 19044-129ab8a) Lines: 1128 1233 91.5 %
Date: 2016-06-26 Functions: 65 70 92.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 649 846 76.7 %

Function Name Sort by function name Hit count Sort by hit count
FpC_ratlift 0
FpM_ratlift 9915
FpX_ratlift 5721
FqX_centermod 31052
L2_bound 1617
QXQX_normalize 1316
RgX_int_normalize 2037
ZXirred_is_cyclo_translate 280
ZqX 1295
ZqX_normalize 1295
arch_for_T2 17997
arch_for_T2_prec 10381
bestlift_bound 1295
bestlift_init 1617
cmbf_maxK 9905
ensure_lt_INT 1337
fact_from_sqff 525
fix_nf 1148
get_Bhigh 847
get_R 1631
get_V 490
get_good_factor 28812
get_maxf 1799
get_nfsqff_data 1225
get_trace 187950
guess_roots 791
init_div_data 1659
init_proj 1617
init_trace 1498
is_primitive_root 0
lift_to_frac 980180
max_radius 1631
mybestlift_bound 322
nf_Beauzamy_bound 749
nf_DDF_roots 882
nf_LLL_cmbf 98
nf_Mignotte_bound 749
nf_bestlift 70749
nf_bestlift_to_pol 52815
nf_chk_factors 56
nf_combine_factors 749
nf_factor_bound 749
nf_pick_prime 1477
nf_pick_prime_for_units 322
nf_pm1 0
nf_pol_lift 12614
nf_root_bounds 1295
nf_to_Zq 21322
nfcmbf 749
nfcyclo_root 357
nffactor 525
nffactormod 7
nfgcd 1274
nfgcd_all 2674
nfissplit 21
nfissquarefree 1372
nfroots 1876
nfroots_split 42
nfsqff 1988
nfsqff_trager 231
nfsqff_use_Trager 2716
normlp 2303
polfnf 112
proper_nf 217
rootsof1 1959
rootsof1_kannan 0
trivroots 1420
update_target 2310
update_trace 31500
zerofact 0

Generated by: LCOV version 1.9