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 Hit Total Coverage
Test: PARI/GP v2.14.0 lcov report (development 27102-e8476a37b5) Lines: 114299 123408 92.6 %
Date: 2021-12-04 07:05:33 Functions: 10402 11018 94.4 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 %

Filename Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage
F2v.c
86.7%86.7%
86.7 % 542 / 625 80.6 % 54 / 67
F2x.c
82.9%82.9%
82.9 % 1437 / 1734 85.8 % 175 / 204
F2xqE.c
93.7%93.7%
93.7 % 419 / 447 94.8 % 55 / 58
F3v.c
83.5%83.5%
83.5 % 152 / 182 76.7 % 23 / 30
FF.c
92.4%92.4%
92.4 % 1344 / 1454 94.6 % 139 / 147
Fle.c
93.2%93.2%
93.2 % 438 / 470 89.1 % 57 / 64
Flv.c
97.2%97.2%
97.2 % 737 / 758 93.5 % 58 / 62
Flx.c
89.7%89.7%
89.7 % 2146 / 2392 89.9 % 258 / 287
FlxX.c
89.3%89.3%
89.3 % 1097 / 1228 89.4 % 127 / 142
FlxqE.c
97.3%97.3%
97.3 % 797 / 819 98.8 % 79 / 80
Flxq_log.c
95.3%95.3%
95.3 % 445 / 467 100.0 % 28 / 28
FpE.c
91.7%91.7%
91.7 % 985 / 1074 93.0 % 106 / 114
FpV.c
78.5%78.5%
78.5 % 747 / 951 84.2 % 112 / 133
FpX.c
90.7%90.7%
90.7 % 1430 / 1577 93.0 % 174 / 187
FpXQX_factor.c
83.2%83.2%
83.2 % 1590 / 1910 84.5 % 125 / 148
FpXX.c
83.7%83.7%
83.7 % 916 / 1095 88.0 % 110 / 125
FpX_factor.c
92.5%92.5%
92.5 % 1286 / 1391 93.2 % 110 / 118
QX_factor.c
96.4%96.4%
96.4 % 772 / 801 97.9 % 46 / 47
Qfb.c
89.2%89.2%
89.2 % 937 / 1051 92.0 % 115 / 125
RgV.c
90.0%90.0%
90.0 % 521 / 579 92.2 % 95 / 103
RgX.c
89.8%89.8%
89.8 % 1599 / 1781 91.1 % 194 / 213
Ser.c
99.3%99.3%
99.3 % 142 / 143 100.0 % 18 / 18
ZG.c
60.3%60.3%
60.3 % 44 / 73 57.1 % 8 / 14
ZV.c
89.0%89.0%
89.0 % 779 / 875 92.4 % 122 / 132
ZX.c
89.3%89.3%
89.3 % 695 / 778 93.1 % 94 / 101
Zp.c
93.5%93.5%
93.5 % 762 / 815 93.5 % 72 / 77
alglin1.c
86.7%86.7%
86.7 % 2740 / 3161 93.0 % 292 / 314
alglin2.c
90.0%90.0%
90.0 % 1015 / 1128 93.0 % 80 / 86
alglin3.c
92.6%92.6%
92.6 % 529 / 571 88.7 % 47 / 53
aprcl.c
85.0%85.0%
85.0 % 600 / 706 98.0 % 50 / 51
arith1.c
92.3%92.3%
92.3 % 1976 / 2142 94.5 % 206 / 218
arith2.c
88.9%88.9%
88.9 % 496 / 558 89.5 % 68 / 76
base1.c
95.0%95.0%
95.0 % 1708 / 1797 89.0 % 137 / 154
base2.c
94.7%94.7%
94.7 % 2164 / 2286 97.7 % 167 / 171
base3.c
93.6%93.6%
93.6 % 1886 / 2015 94.8 % 217 / 229
base4.c
89.2%89.2%
89.2 % 1582 / 1773 89.7 % 156 / 174
base5.c
93.0%93.0%
93.0 % 1082 / 1163 94.9 % 75 / 79
bb_group.c
94.0%94.0%
94.0 % 535 / 569 100.0 % 36 / 36
bb_hnf.c
94.1%94.1%
94.1 % 624 / 663 92.7 % 51 / 55
bern.c
92.6%92.6%
92.6 % 325 / 351 97.1 % 34 / 35
bibli1.c
95.1%95.1%
95.1 % 1058 / 1112 91.9 % 68 / 74
bibli2.c
95.2%95.2%
95.2 % 1180 / 1240 94.8 % 110 / 116
bit.c
96.7%96.7%
96.7 % 408 / 422 94.4 % 34 / 36
bnflog.c
97.8%97.8%
97.8 % 272 / 278 100.0 % 26 / 26
bnfunits.c
96.4%96.4%
96.4 % 217 / 225 100.0 % 14 / 14
buch1.c
94.7%94.7%
94.7 % 641 / 677 92.0 % 46 / 50
buch2.c
91.9%91.9%
91.9 % 2169 / 2360 92.6 % 150 / 162
buch3.c
94.4%94.4%
94.4 % 1521 / 1612 96.0 % 119 / 124
buch4.c
95.9%95.9%
95.9 % 141 / 147 100.0 % 8 / 8
char.c
97.2%97.2%
97.2 % 806 / 829 100.0 % 63 / 63
concat.c
90.8%90.8%
90.8 % 325 / 358 100.0 % 15 / 15
crvwtors.c
84.0%84.0%
84.0 % 268 / 319 82.1 % 23 / 28
digits.c
93.1%93.1%
93.1 % 162 / 174 100.0 % 23 / 23
dirichlet.c
91.5%91.5%
91.5 % 313 / 342 100.0 % 21 / 21
ecpp.c
92.9%92.9%
92.9 % 745 / 802 96.9 % 95 / 98
ellanal.c
92.1%92.1%
92.1 % 726 / 788 94.4 % 67 / 71
elliptic.c
93.5%93.5%
93.5 % 4153 / 4440 97.9 % 375 / 383
ellisog.c
98.7%98.7%
98.7 % 935 / 947 100.0 % 78 / 78
ellpadic.c
95.9%95.9%
95.9 % 584 / 609 100.0 % 47 / 47
ellpadiclambdamu.c
100.0%
100.0 % 113 / 113 100.0 % 7 / 7
ellrank.c
93.9%93.9%
93.9 % 1283 / 1367 94.5 % 120 / 127
ellsea.c
95.5%95.5%
95.5 % 1156 / 1211 96.8 % 90 / 93
elltors.c
95.5%95.5%
95.5 % 424 / 444 92.6 % 25 / 27
galconj.c
83.2%83.2%
83.2 % 1901 / 2284 78.8 % 119 / 151
gen1.c
94.8%94.8%
94.8 % 1823 / 1923 100.0 % 94 / 94
gen2.c
88.7%88.7%
88.7 % 1561 / 1759 94.1 % 144 / 153
gen3.c
92.6%92.6%
92.6 % 2482 / 2679 95.8 % 229 / 239
hnf_snf.c
90.4%90.4%
90.4 % 1556 / 1721 89.9 % 89 / 99
hyperell.c
92.1%92.1%
92.1 % 488 / 530 97.7 % 42 / 43
hypergeom.c
98.7%98.7%
98.7 % 664 / 673 100.0 % 70 / 70
ifactor1.c
82.6%82.6%
82.6 % 1536 / 1860 87.7 % 93 / 106
ispower.c
93.2%93.2%
93.2 % 686 / 736 94.9 % 37 / 39
kummer.c
98.7%98.7%
98.7 % 862 / 873 100.0 % 61 / 61
lambert.c
89.6%89.6%
89.6 % 233 / 260 81.8 % 18 / 22
lfun.c
96.1%96.1%
96.1 % 1429 / 1487 99.4 % 158 / 159
lfunquad.c
96.9%96.9%
96.9 % 342 / 353 97.7 % 43 / 44
lfunutils.c
93.1%93.1%
93.1 % 1599 / 1718 95.0 % 153 / 161
lll.c
95.6%95.6%
95.6 % 1196 / 1251 97.8 % 90 / 92
map.c
99.1%99.1%
99.1 % 219 / 221 100.0 % 27 / 27
matperm.c
100.0%
100.0 % 78 / 78 100.0 % 4 / 4
mellininv.c
98.8%98.8%
98.8 % 333 / 337 100.0 % 36 / 36
mftrace.c
97.5%97.5%
97.5 % 7520 / 7710 99.4 % 765 / 770
modsym.c
93.2%93.2%
93.2 % 2820 / 3026 98.3 % 294 / 299
msfarey.c
96.8%96.8%
96.8 % 184 / 190 100.0 % 17 / 17
nffactor.c
95.4%95.4%
95.4 % 1143 / 1198 98.6 % 69 / 70
nflist.c
96.9%96.9%
96.9 % 3086 / 3184 98.4 % 313 / 318
nflistQT.c
97.1%97.1%
97.1 % 166 / 171 100.0 % 12 / 12
perm.c
90.4%90.4%
90.4 % 938 / 1038 93.7 % 104 / 111
polarit1.c
95.8%95.8%
95.8 % 320 / 334 100.0 % 32 / 32
polarit2.c
90.0%90.0%
90.0 % 2150 / 2388 94.6 % 191 / 202
polarit3.c
90.0%90.0%
90.0 % 1745 / 1938 93.5 % 186 / 199
polclass.c
96.7%96.7%
96.7 % 800 / 827 98.3 % 58 / 59
polmodular.c
97.1%97.1%
97.1 % 2308 / 2378 100.0 % 143 / 143
prime.c
87.8%87.8%
87.8 % 646 / 736 90.8 % 69 / 76
qfisom.c
97.6%97.6%
97.6 % 867 / 888 100.0 % 55 / 55
qfsolve.c
98.3%98.3%
98.3 % 590 / 600 100.0 % 32 / 32
quad.c
92.3%92.3%
92.3 % 631 / 684 96.3 % 52 / 54
ramanujantau.c
97.3%97.3%
97.3 % 107 / 110 100.0 % 12 / 12
random.c
100.0%
100.0 % 157 / 157 100.0 % 17 / 17
rootpol.c
95.9%95.9%
95.9 % 1477 / 1540 97.5 % 116 / 119
subcyclo.c
90.9%90.9%
90.9 % 559 / 615 93.2 % 41 / 44
subfield.c
98.1%98.1%
98.1 % 940 / 958 98.0 % 48 / 49
subgroup.c
96.0%96.0%
96.0 % 356 / 371 100.0 % 24 / 24
trans1.c
96.9%96.9%
96.9 % 2223 / 2294 98.8 % 164 / 166
trans2.c
96.1%96.1%
96.1 % 1219 / 1268 97.9 % 93 / 95
trans3.c
93.4%93.4%
93.4 % 1856 / 1987 97.8 % 132 / 135
volcano.c
98.5%98.5%
98.5 % 338 / 343 100.0 % 22 / 22
zetamult.c
96.6%96.6%
96.6 % 544 / 563 100.0 % 40 / 40

Generated by: LCOV version 1.13