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 - bibli2.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20459-9710128) Lines: 1044 1078 96.8 %
Date: 2017-04-28 05:33:48 Functions: 92 96 95.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
QXQ_reverse 486
RgV_polint 180
RgXQ_reverse 24
ZV_indexsort 354
ZV_search 766506
ZV_sort 978978
ZV_sort_uniq 2172
ZV_union_shallow 251256
Z_to_perm 5070
binomial 85698
binomial0 180
binomialuu 63786
check_positive_entries 108
closurecmp 6762
cmp_Flx 144072
cmp_RgX 20730
cmp_RgX_Rg 240
cmp_nodata 344584285
cmp_prime_ideal 22854
cmp_prime_over_p 512451
cmp_small 44473596
convol 6
dirdiv 546
dirmul 162
dirval 1416
err_reverse 6
gen_cmp_RgX 833067
gen_indexsort 1164300
gen_indexsort_uniq 108
gen_search 12793488
gen_setminus 6
gen_sort 2064874
gen_sort_inplace 20936520
gen_sort_uniq 3882
gen_sortspec 102516784
gen_sortspec_uniq 819918
gprec 156
gprec_w 1820610
gprec_wtrunc 207384
gtoset 126
indexlexsort 0
indexsort 4380
indexvecsort 0
init_sort 24169684
laplace 18
lexsort 0
mathilbert 114
matqpascal 966
merge_factor 779592
merge_sort_uniq 28086
modreverse 24
numtoperm 5070
perm_to_Z 720
perm_to_Z_inplace 1458
permtonum 1464
polchebyshev 3672
polchebyshev1 1848
polchebyshev1_eval 12
polchebyshev1_eval_aux 60
polchebyshev2 1830
polchebyshev2_eval 30
polchebyshev2_eval_aux 78
polchebyshev_eval 3714
polcyclo 35046
polcyclo_eval 12852
polcyclo_prime 30878
polhermite 1224
polhermite_eval 1236
polint 564
polint_i 462
pollaplace 12
pollegendre 1872
pollegendre_eval 1854
polrecip 96
serlaplace 6
setbinop 18
setintersect 6
setisset 12
setminus 6
setsearch 30
setunion 30
sort 512058
sort_extract 1443939
sort_factor 2394977
sort_factor_pol 373169
sort_function 846552
stirling 258
stirling1 132
stirling2 1452
tablesearch 13894977
vecbinomial 12888
veccmp 960
vecsearch 845988
vecsort 0
vecsort0 564
zv_search 13126287

Generated by: LCOV version 1.11