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.18.0 lcov report (development 29712-7c8a932571) Lines: 1215 1425 85.3 %
Date: 2024-11-15 09:08:45 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
plotarc 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
gtodblList 42
plotrecthraw_i 42
_ploth 44
gendraw 44
plotdraw 44
ploth 44
ploth0 44
plothexport 46
plothexport0 46
plotcursor 47
pari_get_psplot 49
rect2ps 49
rect2ps_i 49
ps_rect 56
_plothexport 60
plotexport 64
Draw 76
pari_get_fmtplot 78
svg_lines 82
plotinit 90
pari_get_svgplot 93
rect2svg 93
svg_head 93
svg_tail 93
ps_string 98
wxy_init 108
wxy_n 108
svg_rect 111
plotmove 119
clipline 120
_box 137
fmt_convert 142
gen_draw 142
plotscale0 171
rectbox0 173
initrect_get_arg 180
_line 228
svg_text 250
rectline0 264
plotkill 310
initrect_i 314
cp 460
plotstring 492
dblV_from_RgV 504
rectticks 548
_move 821
ps_point 860
plotmove0 958
svg_point 992
pari_kill_plot_engine 1848
pari_set_plot_engine 1848
pari_init_graphics 1858
ps_line 2765
ps_sc 2989
svg_line 5451
svg_color 6062
plotrecth 9983
plotrecth_i 10087
plotrecthin 10087
plotrecthrawin 10113
rectlines0 10525
plotlinetype 10890
colormap_to_color 11212
color_to_rgb 11216
colorname_to_rgb 11216
rgb_to_long 11216
set_range 20226
long_to_rgb 20267
check_rect_init 24704
check_rect 25026
Rchain 36422
freeobj 36742
get_xy_from_vec 40256
single_recursion 103871
param_recursion 138104
get_xy 138192
svg_rescale 141920
DTOL 173749
Appendx 176441
set_xrange 185061
rmiddle 217949
spline_eval 234176
Appendy 241441
set_yrange 251653

Generated by: LCOV version 1.16