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 - modules - genus2red.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.18.0 lcov report (development 29789-eb252ba62d) Lines: 1325 1458 90.9 %
Date: 2024-12-03 09:08:48 Functions: 60 60 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
discpart 14
zi_pow3mod 14
igusaall 21
igusaj8 21
polymini_zi 21
quadratic 21
ssQ_denom 28
tame_1 28
theta_3_zi 28
igusaj10 42
igusaj8_fromj246 42
tame_3 56
tame_4 56
polymini_zi2 84
quartic 84
theta_3_zi2 84
tame_2 91
tame_567_init_3 91
tame_7 91
padicfactors 119
genus2igusa 126
get_nrq 154
tame_6 189
tame_234_init 203
get_red 252
labelm3 259
groupH 280
litredtp 280
RgX_recip6 322
tame_5 329
dicyclic 336
get_nr 455
get_maxc 504
tame_567_init 609
myval_zi2 672
factmz 812
tame 840
ssQ_red 1330
cyclic 1344
RgX_to_03 1400
apol2 1400
apol3 1400
apol5 1400
bpol2 1400
genus2red 1400
hyperellintegralmodel 1400
zv_snf 1421
genus2localred 1442
stable_reduction 1442
igusaj2 1463
igusaj4 1463
igusaj6 1463
myval_zi 1491
polymini 1680
get_lambda 1743
RgX_to_06 1750
min3 1932
theta_j 1932
my3val 2982
myval 23695

Generated by: LCOV version 1.16