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 - nffactor.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 18590-b5f7c1c) Lines: 1122 1227 91.4 %
Date: 2016-02-09 Functions: 65 70 92.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 644 840 76.7 %

Function Name Sort by function name Hit count Sort by hit count
FpC_ratlift 0
FpM_ratlift 7956
FpX_ratlift 5394
FqX_centermod 30926
L2_bound 1799
QXQX_normalize 1281
RgX_int_normalize 2037
ZXirred_is_cyclo_translate 266
ZqX 1491
ZqX_normalize 1491
arch_for_T2 17059
arch_for_T2_prec 10241
bestlift_bound 1491
bestlift_init 1799
cmbf_maxK 9436
ensure_lt_INT 1309
fact_from_sqff 497
fix_nf 1596
get_Bhigh 791
get_R 1813
get_V 490
get_good_factor 33558
get_maxf 2205
get_nfsqff_data 1197
get_trace 188062
guess_roots 777
init_div_data 1841
init_proj 1799
init_trace 1386
is_primitive_root 0
lift_to_frac 656597
max_radius 1813
mybestlift_bound 308
nf_Beauzamy_bound 693
nf_DDF_roots 1120
nf_LLL_cmbf 98
nf_Mignotte_bound 693
nf_bestlift 70574
nf_bestlift_to_pol 53004
nf_chk_factors 56
nf_combine_factors 693
nf_factor_bound 693
nf_pick_prime 1897
nf_pick_prime_for_units 308
nf_pm1 0
nf_pol_lift 12488
nf_root_bounds 1491
nf_to_Zq 21399
nfcmbf 693
nfcyclo_root 343
nffactor 490
nffactormod 7
nfgcd 1232
nfgcd_all 2604
nfissplit 21
nfissquarefree 1806
nfroots 1876
nfroots_split 518
nfsqff 2408
nfsqff_trager 231
nfsqff_use_Trager 3108
normlp 2751
polfnf 112
proper_nf 742
rootsof1 1924
rootsof1_kannan 0
trivroots 1399
update_target 2184
update_trace 30828
zerofact 0

Generated by: LCOV version 1.9