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.16.2 lcov report (development 29115-f22e516b23) Lines: 1216 1425 85.3 %
Date: 2024-02-28 08:03:13 Functions: 111 131 84.7 %
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
hex2 0
pari_plot_by_file 0
parploth 0
plotell 0
plotpointsize 0
ps_arc 0
ps_fillarc 0
ps_fillrect 0
psdraw 0
psploth 0
psploth0 0
psplothraw 0
rectarc0 0
svg_ell 0
svg_fillell 0
svg_fillrect 0
plotrecth0 7
plotcolor 8
plothraw 8
plothsizes 8
rectsplines 8
parplothexport 14
plotrecthraw 16
plotbox 18
plothrawexport 18
plotline 18
plotpoint 18
plotpointtype 18
plotrbox 18
plotrline 18
plotrmove 18
plotrpoint 18
plotclip 20
ps_points 21
plothraw_i 26
ps_lines 28
svg_points 32
plotscale 34
plotcopy 36
plotlines 36
plotpoint0 36
plotpoints 36
plotpoints0 36
plothexport 39
plothexport0 39
gtodblList 42
plotrecthraw_i 42
_ploth 44
gendraw 44
plotdraw 44
ploth 44
ploth0 44
plotcursor 47
pari_get_psplot 49
rect2ps 49
rect2ps_i 49
_plothexport 53
ps_rect 56
plotexport 64
pari_get_fmtplot 71
svg_lines 75
Draw 76
pari_get_svgplot 86
rect2svg 86
svg_head 86
svg_tail 86
plotinit 90
ps_string 98
svg_rect 104
wxy_init 108
wxy_n 108
plotmove 119
clipline 120
_box 130
fmt_convert 135
gen_draw 135
plotscale0 164
rectbox0 166
initrect_get_arg 180
_line 214
svg_text 222
rectline0 250
plotkill 296
initrect_i 300
cp 460
plotstring 464
dblV_from_RgV 504
rectticks 520
_move 772
ps_point 860
plotmove0 909
svg_point 992
pari_kill_plot_engine 1820
pari_set_plot_engine 1820
pari_init_graphics 1830
ps_line 2765
ps_sc 2989
svg_line 4905
svg_color 5467
plotrecth 9983
plotrecth_i 10080
plotrecthin 10080
plotrecthrawin 10106
rectlines0 10518
plotlinetype 10862
colormap_to_color 11170
color_to_rgb 11174
colorname_to_rgb 11174
rgb_to_long 11174
long_to_rgb 19630
set_range 20212
check_rect_init 24522
check_rect 24830
Rchain 35743
freeobj 36063
get_xy_from_vec 40256
single_recursion 91404
svg_rescale 127122
param_recursion 138104
get_xy 138192
DTOL 158839
Appendx 170176
set_xrange 178796
rmiddle 208940
spline_eval 234176
Appendy 235176
set_yrange 245388

Generated by: LCOV version 1.14