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 - basemath - kummer.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.18.1 lcov report (development 30370-b9c4b6d044) Lines: 854 864 98.8 %
Date: 2025-07-05 09:22:59 Functions: 60 60 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
H_is_good 77594
RgV_lambda 2996
RgV_tau 18284
Rg_lambda 9240
Rg_tau 281780
_rnfkummer 1211
_rnfkummer_step4 847
bid_primes 41566
bnf_cycgenmod 46185
bnrclassfield 38696
bnrclassfield_H 40103
bnrclassfield_primepower 40145
bnrclassfield_sanitize 8925
bnrclassfield_tower 490
bnrclassfieldvec 30968
compositum_red 2877
compute_beta 46304
compute_polrel 2996
cyclic_compos 40145
disc_primes 38570
downtoK 8988
futu 46186
get_badbnf 49300
get_mmu 5768
get_prlist 46304
get_tau 2877
get_z 61992
gsetvarn 290080
ideallifttoKz 2996
isprincipalell 72646
kervirtualunit 2877
lift_if_rational 75166
lifttoKz 889
list_Hecke 46305
logall 39760
matlogall 46305
max_smu 2538
mod_Xell_a 8988
nfV_to_logFlv 35483
nfX_Z_normalize 2996
nf_to_logFl 115318
nfcompositumall 448
powtau 5992
prconj 6727
prconj_in_list 116116
prlifttoKz 420
prlifttoKz_i 959
prlifttoKzall 539
reduce_mod_Qell 46304
reducebeta 46304
relative_pol 469
rnfkummer 721
rnfkummer_ell 2996
rnfkummer_init 2877
rnfkummer_initall 38549
rnfkummersimple 43308
split_pol 17976
subgroup_info 46305
to_alg 8764
vecsmall_balance 133

Generated by: LCOV version 1.16