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 17240-4611fa9) Lines: 508 676 75.1 %
Date: 2014-12-21 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 165417
chartoGENstr 56
check_name 7
check_proto 1139838
cmp_by_var 6504
cmp_epname 0
compile_str 9793
delete_var 45303
do_alias 4872651
eval_mnemonic 0
exponent 88662
fetch_entry 2591
fetch_entry_raw 4847430
fetch_user_var 2486
fetch_var 28111
fetch_var_higher 18445
fetch_var_value 7
fill_hashtable_single 1148532
findentry 4888358
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 1148532
hashvalue_raw 4888358
ifpari 12627712
ifpari_multi 12271
ifpari_void 16316221
initep 17798
insertep 1166288
install 7
int_read 6931309
int_read_more 560653
is_entry 38706
kill0 21
killep 2898
name_var 84
number 8550678
orpari 2395820
pari_add_function 0
pari_fill_hashtable 4972
pari_is_default 2222
pari_lex 25623275
pari_var_close 1231
pari_var_create 18299
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 6722223
skipdigits 6724162
skipexponent 6721796
skipstring 1031742
strntoGENstr 126968
strtoGENstr 58029
strtoi 6837518
strtor 93791
type0 14749
u_pow10 1530707
var_register 42
varentries_reset 126
varentries_set 14218
varentries_unset 9209
varhigher 42
varlower 28
vars_sort_inplace 147
vars_to_RgXV 147
varstate_restore 6171
varstate_save 51364

Generated by: LCOV version 1.9