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 - language - anal.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 17403-69c3b04) Lines: 508 676 75.1 %
Date: 2015-01-27 Functions: 81 87 93.1 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 283 500 56.6 %

Function Name Sort by function name Hit count Sort by hit count
_given_value 2961
_higher 49
_lower 49
addhelp 42
alias0 28
andpari 165445
chartoGENstr 56
check_name 7
check_proto 1142324
cmp_by_var 6504
cmp_epname 0
compile_str 9793
delete_var 45562
do_alias 4886091
eval_mnemonic 0
exponent 88662
fetch_entry 2591
fetch_entry_raw 4860240
fetch_user_var 2486
fetch_var 28188
fetch_var_higher 18627
fetch_var_value 7
fill_hashtable_single 1151018
findentry 4901630
gadd1e 3160248
gadde 29862
gdive 7
gdivente 7
gdivrounde 7
gmode 7
gmule 5467
gp_read_str 0
gpolvar 518
gshift_right 1392
gshiftle 7
gshiftre 7
gsub1e 0
gsube 15171471
hashvalue 1151018
hashvalue_raw 4901630
ifpari 12627712
ifpari_multi 12271
ifpari_void 16316235
initep 17896
insertep 1168872
install 7
int_read 6891337
int_read_more 554031
is_entry 39147
kill0 21
killep 2898
name_var 84
number 8504086
orpari 2395820
pari_add_function 0
pari_fill_hashtable 4972
pari_is_default 2243
pari_lex 25650820
pari_var_close 1231
pari_var_create 18432
pari_var_init 1243
pari_var_next 84
pari_var_next_temp 126
print_all_user_fun 0
readseq 3339
real_0_digits 161
real_read 93791
skipconstante 6727291
skipdigits 6729230
skipexponent 6726857
skipstring 1032155
strntoGENstr 129390
strtoGENstr 58323
strtoi 6797546
strtor 93791
type0 14840
u_pow10 1524087
var_register 42
varentries_reset 126
varentries_set 14344
varentries_unset 9405
varhigher 42
varlower 28
vars_sort_inplace 147
vars_to_RgXV 147
varstate_restore 6367
varstate_save 52974

Generated by: LCOV version 1.9