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 - stark.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.16.2 lcov report (development 29115-f22e516b23) Lines: 1651 1786 92.4 %
Date: 2024-03-18 08:03:28 Functions: 127 129 98.4 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
AChi 2044
AddMulCoeff 6127544
AllArtinNumbers 707
AllChars 392
AllStark 644
ArtinNumber 980
CHI_eval 634631
CHI_eval_n 636297
CharEval 13783
CharEval_n 13839
CharNewPrec 322
ComputeCoeff 1589
ComputeKernel 448
CopyCoeff 355040
CorrectCoeff 2282
CplxModulus 322
EvalCoeff 3626440
FindModulus 322
FreeMat 6321
GCD24 813
GenusFieldQuadImag 406
GenusFieldQuadReal 14
GetST 385
GetST0 189
GetValue 1253
GetValue1 35
InitChar 385
InitMatAn 4039
InitPrimes 511
InitPrimesQuad 196
InitQuotient 1302
InitReduction 2282
IsGoodSubgroup 518
IsZero 7613478
L_vanishes_at_0 1029
LiftChar 3465
MulCoeff 1485934
NextElt 680988
Polmod2Coeff 392055
QuadGetST 231
RecCoeff 539
RecCoeff2 2002
RecCoeff3 361
ST_alloc 420
TestOne 2338
_0toCoeff 979939
_addmulrr 51886310
_addrr 105518127
_data3 532
_sercoeff 412236
abmap_kernel 448
abmap_subgroup_image 1519
affect_coeff 412236
an_AddMul 355040
an_mul 108531
an_set0 105
an_set0_coprime 98351
bnrL1 70
bnrrootnumber 77
bnrstark 203
bnrstark_cyclic 0
ch_deg 1253
ch_get3 1561
chi_get_c 17815
chi_get_deg 51352
chk_reccoeff 288
chk_reccoeff_init 361
clear_cScT 497
compocyclo 35
compocyclop 14
computeP2 70
computean 693
computeth2 4354
cyc2elts 42399
cyc_is_cyclic 1169
d1 315902
d2 105282
deg0 35
deg11 427
deg12 24337
deg2 26244
divcond 448
do_compo 49
ellphist 8708
ellphistinit 4354
eval_i 1897
findbezk 4424
findbezk_pol 70
findquad 70
findquad_pol 14
galoisapplypol 14
get_C 707
get_Char 3619
get_cS_cT 521409
get_i0 189
get_ilambda 784
get_lambda 70
get_om 4354
get_prdiff 161
get_prec 0
getallelts 70
getallrootsof1 70
gpq 4102
hasexp2 813
init_CHI 3976
init_CHI_C 1526
init_CHI_alg 2450
init_cScT 308
init_pq 49
isZ 119
makescind 133
mpvecpowdiv 224
ppgamma 308
qfbforms 455
quadhilbert 574
quadhilbertimag 462
quadhilbertreal 147
quadray 161
quadray_init 847
sortChars 385
split_pol_quad 133
subgp_intersect 567
subgroup_classes 322
to_approx 8778
treatspecialsigma 119
uhasexp2 1323
zeta_get_N0 630
zeta_get_i0 189
zeta_get_limx 511

Generated by: LCOV version 1.14