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 29420-55f63b8cfe) Lines: 1680 1817 92.5 %
Date: 2024-07-03 09:03:24 Functions: 128 130 98.5 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
AChi 2128
AddMulCoeff 6149930
AllArtinNumbers 721
AllChars 399
AllStark 658
ArtinNumber 994
CHI_eval 643227
CHI_eval_n 644963
CharEval 14707
CharEval_n 14763
CharNewPrec 322
ComputeCoeff 1631
ComputeKernel 455
CopyCoeff 357308
CorrectCoeff 2366
CplxModulus 329
EvalCoeff 3661174
FindModulus 322
FreeMat 6531
GCD24 813
GenusFieldQuadImag 406
GenusFieldQuadReal 14
GetST 392
GetST0 189
GetValue 1295
GetValue1 35
InitChar 392
InitMatAn 4165
InitPrimes 518
InitPrimesQuad 203
InitQuotient 1316
InitReduction 2366
IsGoodSubgroup 518
IsZero 7661729
L_vanishes_at_0 1071
LiftChar 3612
MulCoeff 1511799
NextElt 684019
Polmod2Coeff 397879
QuadGetST 238
RecCoeff 546
RecCoeff2 2156
RecCoeff3 424
ST_alloc 427
TestOne 2618
_0toCoeff 1001821
_addmulrr 51886310
_addrr 105518127
_data3 539
_sercoeff 412236
abmap_kernel 455
abmap_subgroup_image 1526
affect_coeff 412236
an_AddMul 357308
an_mul 111303
an_set0 105
an_set0_coprime 100787
bnrL1 70
bnrrootnumber 77
bnrstark 203
bnrstark_cyclic 0
bnrstarkunit 14
ch_deg 1295
ch_get3 1603
chi_get_c 18893
chi_get_deg 54488
chk_reccoeff 414
chk_reccoeff_init 424
clear_cScT 497
compocyclo 35
compocyclop 14
computeP2 70
computean 735
computeth2 4354
cyc2elts 44751
cyc_is_cyclic 1169
d1 315902
d2 105282
deg0 35
deg11 441
deg12 24659
deg2 26629
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_Char 3661
get_P 714
get_cS_cT 521409
get_i0 189
get_ilambda 798
get_lambda 70
get_om 4354
get_prdiff 161
get_prec 0
getallelts 70
getallrootsof1 70
gpq 4102
hasexp2 813
init_CHI 4130
init_CHI_C 1596
init_CHI_alg 2534
init_cScT 308
init_pq 49
isZ 119
makescind 133
mpvecpowdiv 231
ppgamma 308
qfbforms 455
quadhilbert 574
quadhilbertimag 462
quadhilbertreal 147
quadray 161
quadray_init 847
sortChars 392
split_pol_quad 133
subgp_intersect 567
subgroup_classes 329
to_approx 8778
treatspecialsigma 119
uhasexp2 1323
zeta_get_N0 637
zeta_get_i0 189
zeta_get_limx 518

Generated by: LCOV version 1.16