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 to exceed 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 - gplib.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.16.2 lcov report (development 29115-f22e516b23) Lines: 522 963 54.2 %
Date: 2024-03-29 08:06:26 Functions: 63 97 64.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
_cat 0
ack_debug 56
ack_setdebug 42
atocolor 0
brace_color 0
chron 487
closure_alarmer 121
cmp_epname 7
color_prompt 0
commands 7
community 0
compare_str 173
convert_time 13
cut_trailing_garbage 113
default_help 21
digit_help 7
err_gprc 0
escape 470
external_help 0
filter_quotes 0
filtered_buffer 1894
gentypes 7
get_home 4
get_line_from_file 134636
get_name 133
get_preproc_value 4
gp_alarm 121
gp_alarm_fun 6
gp_alarm_handler 8
gp_allocatemem 84
gp_echo_and_log 112929
gp_format_prompt 7559
gp_format_time 0
gp_handle_exception 12159
gp_help 155
gp_initrc 4
gp_input 7
gp_load_gprc 0
gp_meta 936406
gp_read_line 134453
gp_sigint_fun 0
gphelp_keyword_list 0
gprc_chk 12
gprc_get 4
has_ext_help 13
help 155
is_interactive 247382
kill_buffers_upto 14382
kill_buffers_upto_including 0
member_commands 7
menu_commands 7
next_expr 12
nl_read 0
ok_external_help 0
pari_alarm 112379
pari_center 32
pari_community 2
pari_hit_return 0
pari_init_buffers 1830
pari_print_version 6
pari_skip_alpha 0
pari_skip_space 28
parse_key_val 18
parse_key_val_paren 0
pop_buffer 1894
prettyp_init 0
prettyp_wait 0
print_all_user_obj 7
print_fun_list 7
read_dot_uint 0
read_uint 0
read_version 0
readline_prompt_color 0
sd_breakloop 7
sd_echo 186
sd_graphcolormap 4
sd_graphcolors 4
sd_help 0
sd_histfile 4
sd_lines 6
sd_linewrap 0
sd_plothsizes 35
sd_prompt 0
sd_prompt_cont 0
sd_prompt_set 0
sd_psfile 0
sd_readline 0
sd_recover 0
sd_timer 2
simple_help 39
slash_commands 7
strip_prompt 0
strtime 7
tex2mail_output 0
update_logfile 6773
what_cc 6
what_readline 6

Generated by: LCOV version 1.14