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 - buch3.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 19623-dc26710) Lines: 1444 1535 94.1 %
Date: 2016-09-30 05:54:20 Functions: 98 102 96.1 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
ABC_to_bnr 259
Buchray 6188
Discrayrel 175
Lbnrclassno 1267
archstar_full_rk 1736
bigcgetvec 77
bnfcertify 28
bnfcertify0 49
bnr_log_gen_arch 6272
bnr_log_gen_pr 9989
bnrautmatrix 462
bnrchar 371
bnrchar_i 371
bnrchar_primitive 679
bnrclassno 112
bnrclassno0 105
bnrclassnointern 28
bnrclassnointernarch 280
bnrclassnolist 7
bnrconductor 0
bnrconductor0 56
bnrconductor_i 4410
bnrconductorofchar 2079
bnrdisc 175
bnrdisc0 175
bnrdisclist0 42
bnrgaloisapply 1008
bnrgaloismatrix 238
bnrinit0 637
bnrisconductor 3297
bnrisconductor0 28
bnrisgalois 448
bnrisprincipal 184984
bnrsurjection 1463
bound_unit_index 49
buchnarrow 14
char_denormalize 4039
check_bnrgal 448
check_prime 1540
check_subgroup 7903
chk_listBU 28
compute_M0 21
compute_fact 5229
compute_raygen 5257
conductor_elts 476
contains 14938
decodemodule 21
dft_bound 0
discrayabslist 21
discrayabslistarch 21
factordivexact 420
factormul 1071
factorpow 840
factorsplice 1015
fasmall_append 308
fast_val 6146
get_NR1D 420
get_classno 938
get_dataunit 5551
get_discdata 497
get_discray 497
get_nz 175
get_pi 1890
get_pinvpi 959
hermiteconstant 49
ideallog_to_bnr 16261
idealmoddivisor 4214
idealmoddivisor_aux 5810
imageofchar 406
imageofgroup 301
increment 3206
init_bad 49
is_complex 616
is_unit 70483
is_zero 910
isprimitive 28
isprincipalray 178267
isprincipalraygen 0
lowerboundforregulator 49
make_integral_Z 770
minimforunits 35
minkowski_bound 0
nf_deg1_prime 14
nfarchstar 14280
primecertify 1540
regulatorbound 28
rnfconductor 343
rnfisabelian 42
rnfnormgroup 329
rnfnormgroup_i 672
rowselect_p 805
subgroup_conductor_ok 1099
subgroupcond 28
subgrouplist0 70
subgrouplist_cond_sub 448
too_big 6391
vecselect_p 1344
vext0 3388
vext1 3388
zimmertbound 49
zsimp 21
zsimpjoin 308

Generated by: LCOV version 1.11