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 - elltrans.c (source / functions) Coverage Total Hit
Test: PARI/GP v2.18.1 lcov report (development 31042-0fbe168e69) Lines: 93.0 % 1479 1376
Test Date: 2026-07-23 17:04:59 Functions: 97.4 % 116 113
Legend: Lines:     hit not hit

Function Name Sort by function name Hit count Sort by function hit count
E2_correction 4025
Ek_from_wp 392
PiI2div 41685
PiI2div_sqr 4725
RgXn_eta 28
_period 75208
apply_eta_correction 42
autojtau 220192
autojtauprime 70
check_complex 525588
check_periods 253295
check_unit_disc 21
clearim 1510544
clearimall 377636
coeffEu 476
compute_periods 253288
cxE4E6 427
cxEk 42385
cxanalyze 84
cxredsl2 294
cxredsl2_i 336
doellR_eta 70
doellR_omega 52577
double_eta_quotient 2093
e12 91155
ellQp_P2t 133
ellQp_P2t_err 21
ellQp_t2P 56
ellR_eta 98
ellR_omega 273833
elleis_from_wp 231
elleisnum 4781
elleisnum0 448
elleisnum_testk 5222
elleta 84
elleta_W 66374
elljacobi 70
elljacobi_cx 42
elljacobi_pol 14
ellomega_agm 52577
ellomega_cx 42864
ellperiods 28756
ellsigma 37674
ellsigma_cx 37569
ellwp 0
ellwp0 182
ellwp_cx 181972
ellwpnum_all 181993
ellwpseries 42
ellwpseries_aux 553
ellzeta 161
ellzeta_cx 70
equali01 112
eta 77
eta0 112
eta_correction 8491
eta_form 8372
eta_reduced 8477
expIPiC 783654
expIPiQ 2170
expIPiR 192067
expIPifrac 128098
expIxy 147
form_to_quad 8372
gadd3 406
get_c4c6 294
get_periods 253211
get_r0 182
gmul3 182574
gmul4 181909
inteta 7639
ispair 71435
isqreal 427
jell 42
pi23 219646
pointell 181972
qq 42116
real2nQ 160560
red_modSL2 253288
redmod2Z 219807
reduce_z 219639
ser_E 7
ser_addmulXn 21
ser_eta 7
ser_j 14
ser_j2 7
set_gamma 224742
sqrt32 2079
sumdedekind 28
sumdedekind_coprime 6300
theta 154
theta11prime 70
thetaall 220192
thetaflag 182
thetanull 35
thetanull11 7
thetanull_i 455
thetanullk 7
thetaprec 220269
to_form 8372
trueeta 35
u_sumdedekind_coprime 6293
upper_to_cx 262413
vecthetanullk 0
vecthetanullk_loop 42039
vecthetanullk_tau 0
weber0 42
weberf 14
weberf1 14
weberf2 14
zell 28973
zell_closest_0 56
zell_i 28833
zellcx 28735
zellrealneg 28
zellrealpos 70

Generated by: LCOV version 2.0-1