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 24817-60c8736d58) Lines: 101957 110761 92.1 %
Date: 2019-12-14 05:53:14 Functions: 9347 9959 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
76.8%76.8%
76.8 % 251 / 327 68.9 % 31 / 45
F2x.c
83.5%83.5%
83.5 % 1437 / 1720 86.6 % 175 / 202
F2xqE.c
93.7%93.7%
93.7 % 416 / 444 94.8 % 55 / 58
FF.c
92.9%92.9%
92.9 % 1120 / 1206 93.2 % 136 / 146
Fle.c
84.3%84.3%
84.3 % 301 / 357 76.9 % 40 / 52
Flv.c
96.2%96.2%
96.2 % 733 / 762 93.4 % 57 / 61
Flx.c
89.2%89.2%
89.2 % 2084 / 2337 88.3 % 250 / 283
FlxX.c
90.8%90.8%
90.8 % 1074 / 1183 91.3 % 126 / 138
FlxqE.c
97.0%97.0%
97.0 % 838 / 864 98.8 % 82 / 83
Flxq_log.c
96.1%96.1%
96.1 % 449 / 467 100.0 % 28 / 28
FpE.c
92.4%92.4%
92.4 % 978 / 1058 93.0 % 106 / 114
FpV.c
78.1%78.1%
78.1 % 715 / 915 83.7 % 108 / 129
FpX.c
90.4%90.4%
90.4 % 1340 / 1483 94.0 % 157 / 167
FpXQX_factor.c
83.3%83.3%
83.3 % 1586 / 1905 84.7 % 127 / 150
FpXX.c
84.5%84.5%
84.5 % 872 / 1032 87.9 % 102 / 116
FpX_factor.c
91.9%91.9%
91.9 % 1235 / 1344 91.5 % 107 / 117
Hensel.c
93.1%93.1%
93.1 % 636 / 683 95.6 % 65 / 68
QX_factor.c
96.5%96.5%
96.5 % 766 / 794 97.9 % 46 / 47
Qfb.c
87.0%87.0%
87.0 % 859 / 987 89.6 % 95 / 106
RgV.c
90.4%90.4%
90.4 % 497 / 550 92.9 % 91 / 98
RgX.c
89.9%89.9%
89.9 % 1518 / 1689 91.9 % 181 / 197
Ser.c
100.0%
100.0 % 126 / 126 100.0 % 17 / 17
ZG.c
60.3%60.3%
60.3 % 44 / 73 57.1 % 8 / 14
ZV.c
88.9%88.9%
88.9 % 801 / 901 92.3 % 120 / 130
ZX.c
86.1%86.1%
86.1 % 576 / 669 90.8 % 79 / 87
alglin1.c
86.5%86.5%
86.5 % 2661 / 3078 92.9 % 288 / 310
alglin2.c
90.5%90.5%
90.5 % 985 / 1088 92.9 % 79 / 85
alglin3.c
92.4%92.4%
92.4 % 501 / 542 88.7 % 47 / 53
aprcl.c
84.8%84.8%
84.8 % 599 / 706 98.0 % 50 / 51
arith1.c
92.8%92.8%
92.8 % 3106 / 3346 94.3 % 282 / 299
arith2.c
88.1%88.1%
88.1 % 590 / 670 91.6 % 87 / 95
base1.c
95.5%95.5%
95.5 % 1568 / 1642 88.3 % 121 / 137
base2.c
94.7%94.7%
94.7 % 2138 / 2258 97.7 % 167 / 171
base3.c
92.8%92.8%
92.8 % 1706 / 1838 94.6 % 192 / 203
base4.c
89.0%89.0%
89.0 % 1506 / 1693 88.7 % 149 / 168
base5.c
92.8%92.8%
92.8 % 1062 / 1145 94.9 % 75 / 79
bb_group.c
93.5%93.5%
93.5 % 533 / 570 100.0 % 36 / 36
bb_hnf.c
94.5%94.5%
94.5 % 606 / 641 92.7 % 51 / 55
bern.c
96.5%96.5%
96.5 % 194 / 201 95.2 % 20 / 21
bibli1.c
95.3%95.3%
95.3 % 1027 / 1078 91.4 % 64 / 70
bibli2.c
95.0%95.0%
95.0 % 1092 / 1149 94.6 % 105 / 111
bit.c
91.2%91.2%
91.2 % 372 / 408 91.7 % 33 / 36
bnflog.c
97.9%97.9%
97.9 % 275 / 281 100.0 % 26 / 26
buch1.c
94.6%94.6%
94.6 % 631 / 667 91.5 % 43 / 47
buch2.c
91.0%91.0%
91.0 % 2140 / 2351 93.7 % 149 / 159
buch3.c
94.7%94.7%
94.7 % 1400 / 1478 96.3 % 104 / 108
buch4.c
78.4%78.4%
78.4 % 378 / 482 79.4 % 27 / 34
char.c
97.3%97.3%
97.3 % 784 / 806 100.0 % 63 / 63
concat.c
90.8%90.8%
90.8 % 305 / 336 100.0 % 15 / 15
crvwtors.c
83.9%83.9%
83.9 % 270 / 322 82.8 % 24 / 29
dirichlet.c
99.3%99.3%
99.3 % 134 / 135 100.0 % 11 / 11
ecpp.c
92.8%92.8%
92.8 % 633 / 682 97.7 % 84 / 86
ellanal.c
91.3%91.3%
91.3 % 665 / 728 93.3 % 56 / 60
elliptic.c
92.1%92.1%
92.1 % 3750 / 4070 95.3 % 346 / 363
ellisog.c
98.7%98.7%
98.7 % 943 / 955 100.0 % 79 / 79
ellpadic.c
96.0%96.0%
96.0 % 580 / 604 100.0 % 47 / 47
ellpadiclambdamu.c
100.0%
100.0 % 113 / 113 100.0 % 7 / 7
ellsea.c
95.9%95.9%
95.9 % 1110 / 1158 97.6 % 81 / 83
elltors.c
94.4%94.4%
94.4 % 402 / 426 88.5 % 23 / 26
galconj.c
80.6%80.6%
80.6 % 1706 / 2116 76.6 % 111 / 145
gen1.c
94.9%94.9%
94.9 % 1689 / 1780 100.0 % 91 / 91
gen2.c
88.1%88.1%
88.1 % 1343 / 1524 93.4 % 141 / 151
gen3.c
92.7%92.7%
92.7 % 2213 / 2388 95.8 % 226 / 236
hnf_snf.c
91.3%91.3%
91.3 % 1524 / 1669 92.6 % 88 / 95
hyperell.c
91.4%91.4%
91.4 % 488 / 534 97.7 % 42 / 43
hypergeom.c
100.0%
100.0 % 628 / 628 100.0 % 66 / 66
ifactor1.c
80.9%80.9%
80.9 % 1449 / 1792 86.3 % 88 / 102
kummer.c
92.0%92.0%
92.0 % 999 / 1086 97.2 % 69 / 71
lfun.c
96.2%96.2%
96.2 % 1469 / 1527 99.4 % 153 / 154
lfunquad.c
98.1%98.1%
98.1 % 357 / 364 100.0 % 45 / 45
lfunutils.c
91.9%91.9%
91.9 % 1536 / 1672 92.2 % 141 / 153
lll.c
92.1%92.1%
92.1 % 440 / 478 93.8 % 30 / 32
map.c
99.1%99.1%
99.1 % 217 / 219 100.0 % 27 / 27
matperm.c
100.0%
100.0 % 78 / 78 100.0 % 4 / 4
mellininv.c
97.7%97.7%
97.7 % 333 / 341 100.0 % 33 / 33
mftrace.c
97.7%97.7%
97.7 % 7384 / 7561 99.5 % 756 / 760
modsym.c
93.1%93.1%
93.1 % 2785 / 2991 98.3 % 294 / 299
msfarey.c
96.8%96.8%
96.8 % 184 / 190 100.0 % 17 / 17
nffactor.c
95.8%95.8%
95.8 % 1182 / 1234 98.6 % 72 / 73
perm.c
83.5%83.5%
83.5 % 687 / 823 88.8 % 79 / 89
polarit1.c
96.6%96.6%
96.6 % 313 / 324 100.0 % 32 / 32
polarit2.c
90.7%90.7%
90.7 % 1944 / 2144 95.5 % 191 / 200
polarit3.c
89.3%89.3%
89.3 % 1590 / 1781 91.9 % 170 / 185
polclass.c
97.3%97.3%
97.3 % 833 / 856 98.3 % 59 / 60
polmodular.c
97.0%97.0%
97.0 % 2260 / 2331 100.0 % 143 / 143
prime.c
87.7%87.7%
87.7 % 619 / 706 91.8 % 67 / 73
qfisom.c
97.2%97.2%
97.2 % 1001 / 1030 100.0 % 55 / 55
qfsolve.c
98.5%98.5%
98.5 % 595 / 604 100.0 % 30 / 30
random.c
100.0%
100.0 % 141 / 141 100.0 % 16 / 16
rootpol.c
95.8%95.8%
95.8 % 1467 / 1531 97.5 % 116 / 119
subcyclo.c
94.9%94.9%
94.9 % 525 / 553 97.6 % 40 / 41
subgroup.c
95.8%95.8%
95.8 % 338 / 353 100.0 % 22 / 22
trans1.c
97.2%97.2%
97.2 % 2096 / 2156 98.7 % 157 / 159
trans2.c
95.5%95.5%
95.5 % 1089 / 1140 97.8 % 87 / 89
trans3.c
93.3%93.3%
93.3 % 1869 / 2003 97.7 % 126 / 129
volcano.c
96.8%96.8%
96.8 % 329 / 340 100.0 % 22 / 22
zetamult.c
98.4%98.4%
98.4 % 246 / 250 95.5 % 21 / 22

Generated by: LCOV version 1.13