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.1 lcov report (development 30773-2078653b96) Lines: 1424 1557 91.5 %
Date: 2026-04-03 09:26:58 Functions: 60 60 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
RgX_recip6 413
RgX_to_03 2996
RgX_to_06 3416
apol2 2996
apol3 2996
apol5 2996
bpol2 2996
cyclic 3129
dicyclic 623
discpart 21
factmz 1988
genus2igusa 126
genus2localred 3710
genus2red 2996
get_lambda 3696
get_maxc 714
get_nr 889
get_nrq 364
get_red 294
groupH 462
hyperellintegralmodel 2996
igusaall 21
igusaj10 42
igusaj2 3059
igusaj4 3059
igusaj6 3059
igusaj8 21
igusaj8_fromj246 42
labelm3 301
litredtp 322
min3 4571
my3val 2982
myval 52010
myval_zi 1491
myval_zi2 672
padicfactors 175
polymini 3584
polymini_zi 21
polymini_zi2 84
quadratic 21
quartic 84
ssQ_denom 49
ssQ_red 2730
stable_reduction 3710
tame 1617
tame_1 49
tame_2 189
tame_234_init 455
tame_3 112
tame_4 154
tame_5 651
tame_567_init 1113
tame_567_init_3 91
tame_6 322
tame_7 140
theta_3_zi 28
theta_3_zi2 84
theta_j 3892
zi_pow3mod 14
zv_snf 3339

Generated by: LCOV version 1.16