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.18.0 lcov report (development 29806-4d001396c7) Lines: 572 1020 56.1 %
Date: 2024-12-21 09:08:57 Functions: 68 103 66.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
_cat 0
atocolor 0
brace_color 0
color_prompt 0
community 0
err_gprc 0
external_help 0
filter_quotes 0
gp_format_time 0
gp_load_gprc 0
gp_sigint_fun 0
gphelp_keyword_list 0
kill_buffers_upto_including 0
nl_read 0
ok_external_help 0
pari_hit_return 0
pari_skip_alpha 0
parse_key_val_paren 0
prettyp_GEN 0
prettyp_init 0
prettyp_output 0
prettyp_wait 0
read_dot_uint 0
read_uint 0
read_version 0
readline_prompt_color 0
sd_help 0
sd_linewrap 0
sd_prompt 0
sd_prompt_cont 0
sd_prompt_set 0
sd_psfile 0
sd_readline 0
sd_recover 0
strip_prompt 0
pari_community 2
sd_timer 2
str_lim_lines 2
get_home 4
get_preproc_value 4
gp_classic_output 4
gp_initrc 4
gprc_get 4
sd_graphcolormap 4
sd_graphcolors 4
sd_histfile 4
str_display_hist 4
gp_alarm_fun 6
pari_print_version 6
sd_lines 6
what_cc 6
what_readline 6
cmp_epname 7
commands 7
digit_help 7
gentypes 7
gp_input 7
member_commands 7
menu_commands 7
pari_breakpoint 7
print_all_user_obj 7
print_fun_list 7
sd_breakloop 7
slash_commands 7
strtime 7
gp_alarm_handler 12
gprc_chk 12
next_expr 12
convert_time 13
has_ext_help 13
parse_key_val 18
default_help 21
pari_skip_space 28
pari_center 32
sd_plothsizes 35
simple_help 39
ack_setdebug 42
ack_debug 56
gp_allocatemem 84
cut_trailing_garbage 113
closure_alarmer 121
gp_alarm 121
get_name 133
gp_help 155
help 155
compare_str 173
sd_echo 186
escape 470
chron 557
pari_init_buffers 1872
filtered_buffer 1936
pop_buffer 1936
update_logfile 6843
gp_format_prompt 7664
gp_handle_exception 12739
kill_buffers_upto 15025
gp_display_hist 59484
pari_alarm 117398
gp_echo_and_log 117948
gp_read_line 140445
get_line_from_file 140628
is_interactive 258393
gp_meta 942363

Generated by: LCOV version 1.16