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 - buch1.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.18.1 lcov report (development 30711-c92306d4b4) Lines: 679 711 95.5 %
Date: 2026-02-25 09:24:21 Functions: 52 56 92.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Buchquad 4424
Buchquad_i 122384
FBquad 122281
GRH_ensure 454469
GRH_last_prime 0
QFI_comp 16456164
QFR3_comp 1007545
QFR5_comp 1735160
Z_isquasismooth_prod 7086022
add_fact 3100992
bnf_increase_LIMC 2366
buchimag 0
buchreal 0
cache_prime_quad 2051680
clearhash 293809
compute_invresquad 122184
crabs 55146
dbg_all 0
dist 184688
dist_set 184688
factorquad 7092200
gcdreal 33978
get_R 159413
get_clgp 122172
hash 3468068
imag_be_honest 7
imag_relations 175346
init_form 6122453
is_bad 688054
isless_iu 10416
largeprime 3467881
mpqs_relations 336
nthidealquad 122172
powsubFBquad 171546
qfi_factorback 262268
qfi_random 5501079
qfr3_canon 1166963
qfr3_canon_safe 3710
qfr3_pf 159390
qfr3_random 161567
qfr5_canon 1952748
qfr5_factorback 197015
qfr5_pf 217588
qfr5_rho_pow 220157
quadGRHchk 1807246
quad_be_honest 122169
quadclassno 112949
quadclassnos 5008
quadclassunit0 4424
random_form 5662573
real_be_honest 7
real_relations 5145
rel_to_col 8813
subFBquad 122275
sub_fact 149174
trivial_relations 122185

Generated by: LCOV version 1.16