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 30764-6b81f1f3fa) Lines: 679 711 95.5 %
Date: 2026-03-26 09:27:02 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 122388
FBquad 122282
GRH_ensure 454712
GRH_last_prime 0
QFI_comp 16471651
QFR3_comp 1007545
QFR5_comp 1735160
Z_isquasismooth_prod 7092209
add_fact 3103685
bnf_increase_LIMC 2358
buchimag 0
buchreal 0
cache_prime_quad 2051656
clearhash 294155
compute_invresquad 122187
crabs 55146
dbg_all 0
dist 184688
dist_set 184688
factorquad 7098417
gcdreal 33978
get_R 159754
get_clgp 122166
hash 3472452
imag_be_honest 7
imag_relations 175721
init_form 6128487
is_bad 688062
isless_iu 10416
largeprime 3472408
mpqs_relations 336
nthidealquad 122173
powsubFBquad 171897
qfi_factorback 264254
qfi_random 5504683
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 1807231
quad_be_honest 122165
quadclassno 112953
quadclassnos 5008
quadclassunit0 4424
random_form 5666432
real_be_honest 7
real_relations 5145
rel_to_col 8813
subFBquad 122280
sub_fact 150203
trivial_relations 122187

Generated by: LCOV version 1.16