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 - graph - plotport.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.12.0 lcov report (development 23348-5caea72e3) Lines: 1166 1337 87.2 %
Date: 2018-12-14 05:41:32 Functions: 108 125 86.4 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
_psdraw 0
_psdraw_scale 0
chk_8bit 0
cpd 0
get_plot_null 0
hex2 0
pari_plot_by_file 0
parploth 0
plotpointsize 0
plotrecth0 0
plotrecthraw 0
ps_fillrect 0
psdraw 0
psploth 0
psploth0 0
psplothraw 0
svg_fillrect 0
plothsizes 4
plotcolor 8
plothraw 8
rectsplines 8
plotbox 18
plothrawexport 18
plotline 18
plotpoint 18
plotpointtype 18
plotrbox 18
plotrline 18
plotrmove 18
plotrpoint 18
plotscale 18
plotclip 20
ps_points 21
gtodblList 26
plothraw_i 26
plotrecthraw_i 26
gendraw 28
plotdraw 28
ps_lines 28
plothexport 32
plothexport0 32
svg_points 32
plotcopy 36
plotlines 36
plotpoint0 36
plotpoints 36
plotpoints0 36
ploth 40
ploth0 40
plotcursor 47
svg_lines 47
pari_get_psplot 49
rect2ps 49
rect2ps_i 49
pari_get_fmtplot 50
ps_rect 56
plotexport 57
pari_get_svgplot 58
rect2svg 58
svg_head 58
svg_tail 58
Draw 60
plotinit 67
svg_rect 76
_box 82
wxy_init 85
wxy_n 85
ps_string 98
plotscale0 100
fmt_convert 107
gen_draw 107
rectbox0 118
plotmove 119
clipline 120
initrect_get_arg 134
_line 136
svg_text 138
rectline0 172
plotkill 223
initrect_i 227
rectticks 328
plotstring 364
cp 460
_move 546
plotmove0 683
ps_point 860
svg_point 992
pari_kill_plot_engine 1549
pari_set_plot_engine 1549
pari_init_graphics 1559
svg_line 2371
ps_line 2765
svg_color 2765
ps_sc 2989
get_xy_from_vec2 7412
get_xy_from_vec 8756
plotrecth 9976
plotrecth_i 10048
plotrecthin 10048
rectlines0 10054
plotrecthrawin 10058
plotlinetype 10272
colormap_to_color 10503
color_to_rgb 10511
colorname_to_rgb 10511
rgb_to_long 10511
long_to_rgb 16265
set_range 20116
check_rect_init 22657
check_rect 22892
Rchain 29656
freeobj 29976
svg_rescale 39706
DTOL 70655
single_recursion 91404
Appendx 129920
Appendy 129920
param_recursion 138104
get_xy 138192
Appendxat 138676
set_xrange 146088
Appendyat 172676
set_yrange 180088
rmiddle 208940
spline_eval 234176

Generated by: LCOV version 1.13