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 30504-e6f76a2795) Lines: 1411 1557 90.6 %
Date: 2025-09-29 09:23:05 Functions: 60 60 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
zi_pow3mod 14
discpart 21
igusaall 21
igusaj8 21
polymini_zi 21
quadratic 21
theta_3_zi 28
igusaj10 42
igusaj8_fromj246 42
ssQ_denom 49
tame_1 49
polymini_zi2 84
quartic 84
theta_3_zi2 84
tame_567_init_3 91
tame_3 98
tame_4 98
genus2igusa 126
tame_7 140
padicfactors 175
tame_2 175
get_red 266
get_nrq 280
labelm3 287
litredtp 308
tame_6 322
tame_234_init 371
RgX_recip6 399
groupH 462
dicyclic 553
tame_5 651
myval_zi2 672
get_maxc 700
get_nr 889
factmz 1008
tame_567_init 1113
myval_zi 1491
tame 1533
cyclic 2121
RgX_to_03 2289
apol2 2289
apol3 2289
apol5 2289
bpol2 2289
genus2red 2289
hyperellintegralmodel 2289
zv_snf 2317
genus2localred 2345
stable_reduction 2345
igusaj2 2352
igusaj4 2352
igusaj6 2352
ssQ_red 2562
polymini 2604
RgX_to_06 2709
get_lambda 2716
theta_j 2884
my3val 2982
min3 3150
myval 38787

Generated by: LCOV version 1.16