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.12.1 lcov report (development 25080-049f395cf4) Lines: 102440 111216 92.1 %
Date: 2020-02-27 05:58:23 Functions: 9423 10030 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
ZG.c
60.3%60.3%
60.3 % 44 / 73 57.1 % 8 / 14
buch4.c
73.0%73.0%
73.0 % 281 / 385 76.7 % 23 / 30
F2v.c
73.2%73.2%
73.2 % 251 / 343 66.0 % 31 / 47
FpV.c
78.0%78.0%
78.0 % 716 / 918 83.7 % 108 / 129
galconj.c
80.6%80.6%
80.6 % 1706 / 2116 76.6 % 111 / 145
ifactor1.c
80.9%80.9%
80.9 % 1449 / 1792 86.3 % 88 / 102
FpXQX_factor.c
83.3%83.3%
83.3 % 1586 / 1905 84.7 % 127 / 150
perm.c
83.5%83.5%
83.5 % 687 / 823 88.8 % 79 / 89
F2x.c
83.5%83.5%
83.5 % 1437 / 1720 86.6 % 175 / 202
crvwtors.c
83.9%83.9%
83.9 % 270 / 322 82.8 % 24 / 29
Fle.c
84.3%84.3%
84.3 % 301 / 357 76.9 % 40 / 52
aprcl.c
84.8%84.8%
84.8 % 599 / 706 98.0 % 50 / 51
ZX.c
86.2%86.2%
86.2 % 581 / 674 90.9 % 80 / 88
alglin1.c
86.5%86.5%
86.5 % 2661 / 3078 92.9 % 288 / 310
Qfb.c
87.5%87.5%
87.5 % 872 / 997 90.0 % 99 / 110
prime.c
87.7%87.7%
87.7 % 619 / 706 91.8 % 67 / 73
gen2.c
87.7%87.7%
87.7 % 1336 / 1524 93.4 % 141 / 151
arith2.c
88.1%88.1%
88.1 % 590 / 670 91.6 % 87 / 95
FpXX.c
88.7%88.7%
88.7 % 961 / 1083 93.5 % 115 / 123
ZV.c
88.9%88.9%
88.9 % 801 / 901 92.3 % 120 / 130
base4.c
89.0%89.0%
89.0 % 1532 / 1721 89.5 % 153 / 171
polarit3.c
89.2%89.2%
89.2 % 1692 / 1896 92.3 % 179 / 194
Flx.c
89.4%89.4%
89.4 % 2116 / 2368 88.8 % 254 / 286
FlxX.c
89.5%89.5%
89.5 % 1099 / 1228 90.1 % 128 / 142
RgX.c
89.8%89.8%
89.8 % 1519 / 1692 91.9 % 181 / 197
RgV.c
90.4%90.4%
90.4 % 497 / 550 92.9 % 91 / 98
alglin2.c
90.5%90.5%
90.5 % 985 / 1088 92.9 % 79 / 85
polarit2.c
90.6%90.6%
90.6 % 1957 / 2160 95.5 % 192 / 201
concat.c
90.8%90.8%
90.8 % 305 / 336 100.0 % 15 / 15
buch2.c
91.2%91.2%
91.2 % 2090 / 2291 92.4 % 146 / 158
hnf_snf.c
91.5%91.5%
91.5 % 1527 / 1669 92.6 % 88 / 95
hyperell.c
91.6%91.6%
91.6 % 489 / 534 97.7 % 42 / 43
ellanal.c
91.5%91.5%
91.5 % 658 / 719 93.4 % 57 / 61
FpX.c
91.5%91.5%
91.5 % 1363 / 1489 94.7 % 160 / 169
kummer.c
91.8%91.8%
91.8 % 997 / 1086 97.2 % 69 / 71
FpX_factor.c
91.8%91.8%
91.8 % 1234 / 1344 91.5 % 107 / 117
lfunutils.c
92.2%92.2%
92.2 % 1534 / 1663 92.9 % 143 / 154
elliptic.c
92.2%92.2%
92.2 % 3750 / 4067 95.3 % 345 / 362
lll.c
92.5%92.5%
92.5 % 443 / 479 93.9 % 31 / 33
alglin3.c
92.4%92.4%
92.4 % 501 / 542 88.7 % 47 / 53
FpE.c
92.4%92.4%
92.4 % 978 / 1058 93.0 % 106 / 114
gen3.c
92.7%92.7%
92.7 % 2216 / 2391 95.8 % 226 / 236
base5.c
92.7%92.7%
92.7 % 1061 / 1144 94.9 % 75 / 79
ecpp.c
92.8%92.8%
92.8 % 633 / 682 97.7 % 84 / 86
FF.c
92.9%92.9%
92.9 % 1120 / 1206 93.2 % 136 / 146
arith1.c
92.9%92.9%
92.9 % 3110 / 3347 94.3 % 282 / 299
base3.c
93.1%93.1%
93.1 % 1737 / 1866 94.7 % 197 / 208
modsym.c
93.1%93.1%
93.1 % 2785 / 2992 98.3 % 294 / 299
bb_group.c
93.2%93.2%
93.2 % 531 / 570 100.0 % 36 / 36
Hensel.c
93.1%93.1%
93.1 % 636 / 683 95.6 % 65 / 68
trans3.c
93.4%93.4%
93.4 % 1879 / 2011 97.8 % 131 / 134
F2xqE.c
93.7%93.7%
93.7 % 416 / 444 94.8 % 55 / 58
bnfunits.c
94.1%94.1%
94.1 % 193 / 205 100.0 % 13 / 13
bb_hnf.c
94.3%94.3%
94.3 % 609 / 646 92.7 % 51 / 55
elltors.c
94.4%94.4%
94.4 % 402 / 426 88.5 % 23 / 26
buch1.c
94.6%94.6%
94.6 % 631 / 667 91.5 % 43 / 47
base2.c
94.7%94.7%
94.7 % 2145 / 2266 97.7 % 167 / 171
buch3.c
94.7%94.7%
94.7 % 1400 / 1478 96.3 % 104 / 108
subcyclo.c
94.9%94.9%
94.9 % 525 / 553 97.6 % 40 / 41
bibli2.c
95.0%95.0%
95.0 % 1129 / 1189 94.7 % 107 / 113
gen1.c
95.0%95.0%
95.0 % 1685 / 1773 100.0 % 92 / 92
bibli1.c
95.2%95.2%
95.2 % 1025 / 1077 91.5 % 65 / 71
trans2.c
95.5%95.5%
95.5 % 1097 / 1149 97.8 % 87 / 89
base1.c
95.5%95.5%
95.5 % 1568 / 1642 88.3 % 121 / 137
subgroup.c
95.7%95.7%
95.7 % 335 / 350 100.0 % 22 / 22
Flxq_log.c
95.7%95.7%
95.7 % 447 / 467 100.0 % 28 / 28
nffactor.c
95.8%95.8%
95.8 % 1182 / 1234 98.6 % 72 / 73
rootpol.c
95.8%95.8%
95.8 % 1466 / 1531 97.5 % 116 / 119
ellsea.c
95.9%95.9%
95.9 % 1136 / 1184 97.8 % 89 / 91
ellpadic.c
96.0%96.0%
96.0 % 580 / 604 100.0 % 47 / 47
Flv.c
96.2%96.2%
96.2 % 733 / 762 93.4 % 57 / 61
lfun.c
96.3%96.3%
96.3 % 1448 / 1504 99.4 % 156 / 157
QX_factor.c
96.5%96.5%
96.5 % 766 / 794 97.9 % 46 / 47
bern.c
96.5%96.5%
96.5 % 194 / 201 95.2 % 20 / 21
bit.c
96.5%96.5%
96.5 % 388 / 402 94.4 % 34 / 36
polarit1.c
96.6%96.6%
96.6 % 313 / 324 100.0 % 32 / 32
volcano.c
96.8%96.8%
96.8 % 329 / 340 100.0 % 22 / 22
msfarey.c
96.8%96.8%
96.8 % 184 / 190 100.0 % 17 / 17
FlxqE.c
97.0%97.0%
97.0 % 838 / 864 98.8 % 82 / 83
polmodular.c
97.0%97.0%
97.0 % 2260 / 2331 100.0 % 143 / 143
qfisom.c
97.2%97.2%
97.2 % 1001 / 1030 100.0 % 55 / 55
char.c
97.3%97.3%
97.3 % 784 / 806 100.0 % 63 / 63
trans1.c
97.2%97.2%
97.2 % 2108 / 2168 98.8 % 158 / 160
polclass.c
97.3%97.3%
97.3 % 831 / 854 98.3 % 58 / 59
mellininv.c
97.7%97.7%
97.7 % 333 / 341 100.0 % 33 / 33
mftrace.c
97.7%97.7%
97.7 % 7383 / 7560 99.5 % 755 / 759
bnflog.c
97.9%97.9%
97.9 % 274 / 280 100.0 % 26 / 26
lfunquad.c
98.1%98.1%
98.1 % 357 / 364 100.0 % 45 / 45
zetamult.c
98.4%98.4%
98.4 % 246 / 250 95.5 % 21 / 22
qfsolve.c
98.5%98.5%
98.5 % 595 / 604 100.0 % 30 / 30
ellisog.c
98.7%98.7%
98.7 % 943 / 955 100.0 % 79 / 79
map.c
99.1%99.1%
99.1 % 217 / 219 100.0 % 27 / 27
dirichlet.c
99.3%99.3%
99.3 % 135 / 136 100.0 % 11 / 11
matperm.c
100.0%
100.0 % 78 / 78 100.0 % 4 / 4
ellpadiclambdamu.c
100.0%
100.0 % 113 / 113 100.0 % 7 / 7
Ser.c
100.0%
100.0 % 127 / 127 100.0 % 18 / 18
random.c
100.0%
100.0 % 141 / 141 100.0 % 16 / 16
hypergeom.c
100.0%
100.0 % 628 / 628 100.0 % 66 / 66

Generated by: LCOV version 1.13