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 26074-6d59fb3f70) Lines: 108050 117297 92.1 %
Date: 2021-01-20 06:16:47 Functions: 9733 10365 93.9 %
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
81.2%81.2%
81.2 % 517 / 637 71.2 % 47 / 66
F2x.c
83.3%83.3%
83.3 % 1438 / 1727 86.6 % 175 / 202
F2xqE.c
93.7%93.7%
93.7 % 419 / 447 94.8 % 55 / 58
FF.c
92.6%92.6%
92.6 % 1345 / 1453 94.6 % 139 / 147
Fle.c
86.3%86.3%
86.3 % 383 / 444 80.3 % 49 / 61
Flv.c
96.7%96.7%
96.7 % 736 / 761 93.5 % 58 / 62
Flx.c
89.1%89.1%
89.1 % 2131 / 2392 88.5 % 253 / 286
FlxX.c
89.3%89.3%
89.3 % 1099 / 1230 89.4 % 127 / 142
FlxqE.c
97.0%97.0%
97.0 % 845 / 871 98.8 % 82 / 83
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
91.1%91.1%
91.1 % 1431 / 1570 94.5 % 171 / 181
FpXQX_factor.c
83.2%83.2%
83.2 % 1590 / 1910 84.5 % 125 / 148
FpXX.c
85.6%85.6%
85.6 % 934 / 1091 90.3 % 112 / 124
FpX_factor.c
91.8%91.8%
91.8 % 1245 / 1356 91.5 % 107 / 117
Hensel.c
92.8%92.8%
92.8 % 632 / 681 92.6 % 63 / 68
QX_factor.c
96.4%96.4%
96.4 % 768 / 797 97.9 % 46 / 47
Qfb.c
87.8%87.8%
87.8 % 872 / 993 90.1 % 100 / 111
RgV.c
88.9%88.9%
88.9 % 519 / 584 91.3 % 94 / 103
RgX.c
89.4%89.4%
89.4 % 1538 / 1720 91.0 % 182 / 200
Ser.c
99.3%99.3%
99.3 % 141 / 142 100.0 % 18 / 18
ZG.c
60.3%60.3%
60.3 % 44 / 73 57.1 % 8 / 14
ZV.c
88.8%88.8%
88.8 % 775 / 873 91.5 % 119 / 130
ZX.c
89.2%89.2%
89.2 % 666 / 747 93.8 % 91 / 97
alglin1.c
86.7%86.7%
86.7 % 2742 / 3163 93.0 % 291 / 313
alglin2.c
90.2%90.2%
90.2 % 1017 / 1127 92.9 % 79 / 85
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.7%92.7%
92.7 % 3159 / 3409 94.0 % 281 / 299
arith2.c
88.7%88.7%
88.7 % 606 / 683 91.6 % 87 / 95
base1.c
94.5%94.5%
94.5 % 1637 / 1732 87.7 % 128 / 146
base2.c
94.7%94.7%
94.7 % 2161 / 2282 97.7 % 167 / 171
base3.c
93.5%93.5%
93.5 % 1853 / 1981 94.5 % 207 / 219
base4.c
89.1%89.1%
89.1 % 1578 / 1771 89.6 % 155 / 173
base5.c
92.8%92.8%
92.8 % 1076 / 1160 94.9 % 75 / 79
bb_group.c
93.6%93.6%
93.6 % 540 / 577 100.0 % 36 / 36
bb_hnf.c
94.0%94.0%
94.0 % 630 / 670 92.7 % 51 / 55
bern.c
91.2%91.2%
91.2 % 289 / 317 96.8 % 30 / 31
bibli1.c
95.1%95.1%
95.1 % 1058 / 1112 91.9 % 68 / 74
bibli2.c
95.1%95.1%
95.1 % 1159 / 1219 94.7 % 108 / 114
bit.c
96.7%96.7%
96.7 % 408 / 422 94.4 % 34 / 36
bnflog.c
97.9%97.9%
97.9 % 274 / 280 100.0 % 26 / 26
bnfunits.c
96.4%96.4%
96.4 % 216 / 224 100.0 % 14 / 14
buch1.c
94.6%94.6%
94.6 % 636 / 672 91.5 % 43 / 47
buch2.c
91.9%91.9%
91.9 % 2167 / 2357 92.5 % 149 / 161
buch3.c
94.2%94.2%
94.2 % 1513 / 1606 95.2 % 118 / 124
buch4.c
75.1%75.1%
75.1 % 299 / 398 77.4 % 24 / 31
char.c
97.2%97.2%
97.2 % 807 / 830 100.0 % 63 / 63
concat.c
90.5%90.5%
90.5 % 325 / 359 100.0 % 15 / 15
crvwtors.c
83.2%83.2%
83.2 % 283 / 340 82.8 % 24 / 29
dirichlet.c
91.8%91.8%
91.8 % 312 / 340 100.0 % 21 / 21
ecpp.c
92.3%92.3%
92.3 % 705 / 764 96.8 % 90 / 93
ellanal.c
91.5%91.5%
91.5 % 658 / 719 93.4 % 57 / 61
elliptic.c
91.5%91.5%
91.5 % 3854 / 4211 95.0 % 345 / 363
ellisog.c
98.7%98.7%
98.7 % 944 / 956 100.0 % 79 / 79
ellpadic.c
96.0%96.0%
96.0 % 583 / 607 100.0 % 47 / 47
ellpadiclambdamu.c
100.0%
100.0 % 113 / 113 100.0 % 7 / 7
ellsea.c
95.7%95.7%
95.7 % 1160 / 1212 97.8 % 91 / 93
elltors.c
94.2%94.2%
94.2 % 404 / 429 88.5 % 23 / 26
galconj.c
81.5%81.5%
81.5 % 1855 / 2275 77.2 % 115 / 149
gen1.c
94.9%94.9%
94.9 % 1837 / 1936 100.0 % 94 / 94
gen2.c
87.9%87.9%
87.9 % 1515 / 1723 93.4 % 141 / 151
gen3.c
92.5%92.5%
92.5 % 2433 / 2630 95.8 % 226 / 236
hnf_snf.c
90.3%90.3%
90.3 % 1512 / 1674 90.5 % 86 / 95
hyperell.c
91.9%91.9%
91.9 % 488 / 531 97.7 % 42 / 43
hypergeom.c
100.0%
100.0 % 630 / 630 100.0 % 66 / 66
ifactor1.c
81.2%81.2%
81.2 % 1505 / 1854 86.5 % 90 / 104
kummer.c
99.0%99.0%
99.0 % 853 / 862 100.0 % 61 / 61
lfun.c
96.1%96.1%
96.1 % 1409 / 1466 99.4 % 153 / 154
lfunquad.c
96.9%96.9%
96.9 % 342 / 353 97.7 % 43 / 44
lfunutils.c
93.1%93.1%
93.1 % 1611 / 1730 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
97.8%97.8%
97.8 % 352 / 360 100.0 % 37 / 37
mftrace.c
97.6%97.6%
97.6 % 7536 / 7723 99.4 % 766 / 771
modsym.c
93.2%93.2%
93.2 % 2819 / 3025 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 % 1144 / 1199 98.6 % 69 / 70
perm.c
79.9%79.9%
79.9 % 714 / 894 85.6 % 83 / 97
polarit1.c
95.7%95.7%
95.7 % 315 / 329 100.0 % 32 / 32
polarit2.c
89.9%89.9%
89.9 % 2156 / 2399 94.8 % 199 / 210
polarit3.c
89.2%89.2%
89.2 % 1712 / 1920 92.3 % 180 / 195
polclass.c
97.1%97.1%
97.1 % 833 / 858 98.3 % 58 / 59
polmodular.c
97.1%97.1%
97.1 % 2319 / 2389 100.0 % 143 / 143
prime.c
88.0%88.0%
88.0 % 646 / 734 92.0 % 69 / 75
qfisom.c
97.9%97.9%
97.9 % 871 / 890 100.0 % 55 / 55
qfsolve.c
98.3%98.3%
98.3 % 634 / 645 100.0 % 32 / 32
ramanujantau.c
97.3%97.3%
97.3 % 107 / 110 100.0 % 12 / 12
random.c
100.0%
100.0 % 152 / 152 100.0 % 17 / 17
rootpol.c
95.8%95.8%
95.8 % 1476 / 1541 97.5 % 116 / 119
subcyclo.c
94.6%94.6%
94.6 % 541 / 572 97.6 % 40 / 41
subfield.c
97.0%97.0%
97.0 % 922 / 951 100.0 % 48 / 48
subgroup.c
96.0%96.0%
96.0 % 356 / 371 100.0 % 24 / 24
trans1.c
97.1%97.1%
97.1 % 2225 / 2291 98.8 % 164 / 166
trans2.c
95.9%95.9%
95.9 % 1196 / 1247 97.9 % 92 / 94
trans3.c
93.5%93.5%
93.5 % 1941 / 2077 97.8 % 136 / 139
volcano.c
96.8%96.8%
96.8 % 332 / 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