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 29950-285c5b69ed) Lines: 1411 1557 90.6 %
Date: 2025-02-05 09:09:51 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 252
get_nrq 280
labelm3 280
litredtp 301
tame_6 322
tame_234_init 371
RgX_recip6 392
groupH 462
dicyclic 553
tame_5 651
myval_zi2 672
get_maxc 686
get_nr 889
factmz 987
tame_567_init 1113
myval_zi 1491
tame 1533
cyclic 2100
RgX_to_03 2282
apol2 2282
apol3 2282
apol5 2282
bpol2 2282
genus2red 2282
hyperellintegralmodel 2282
zv_snf 2303
genus2localred 2324
stable_reduction 2324
igusaj2 2345
igusaj4 2345
igusaj6 2345
ssQ_red 2562
polymini 2583
get_lambda 2695
RgX_to_06 2702
theta_j 2842
my3val 2982
min3 3129
myval 38451

Generated by: LCOV version 1.16