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 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.10.0 lcov report (development 22578-936e9dfa8) Lines: 97056 104355 93.0 %
Date: 2018-05-22 05:32:44 Functions: 8761 9225 95.0 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 %

Filename Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage
F2x.c
92.5%92.5%
92.5 % 1427 / 1543 94.1 % 176 / 187
F2xqE.c
94.2%94.2%
94.2 % 420 / 446 94.8 % 55 / 58
FF.c
94.7%94.7%
94.7 % 1068 / 1128 95.6 % 129 / 135
Fle.c
86.8%86.8%
86.8 % 296 / 341 79.6 % 39 / 49
Flx.c
92.0%92.0%
92.0 % 2830 / 3076 92.3 % 346 / 375
FlxqE.c
97.0%97.0%
97.0 % 914 / 942 99.0 % 96 / 97
Flxq_log.c
95.7%95.7%
95.7 % 447 / 467 100.0 % 28 / 28
FpE.c
92.0%92.0%
92.0 % 976 / 1061 92.1 % 105 / 114
FpV.c
75.4%75.4%
75.4 % 706 / 936 79.4 % 104 / 131
FpX.c
90.8%90.8%
90.8 % 1309 / 1442 94.5 % 154 / 163
FpXQX_factor.c
83.8%83.8%
83.8 % 1523 / 1818 86.2 % 125 / 145
FpXX.c
84.0%84.0%
84.0 % 826 / 983 88.6 % 101 / 114
FpX_factor.c
92.8%92.8%
92.8 % 1228 / 1323 94.1 % 111 / 118
Hensel.c
96.4%96.4%
96.4 % 535 / 555 97.9 % 47 / 48
QX_factor.c
95.8%95.8%
95.8 % 715 / 746 97.6 % 41 / 42
Qfb.c
91.8%91.8%
91.8 % 847 / 923 93.0 % 93 / 100
RgV.c
90.1%90.1%
90.1 % 483 / 536 92.7 % 89 / 96
RgX.c
89.6%89.6%
89.6 % 1454 / 1622 92.0 % 172 / 187
Ser.c
100.0%
100.0 % 122 / 122 100.0 % 17 / 17
ZG.c
60.3%60.3%
60.3 % 44 / 73 57.1 % 8 / 14
ZV.c
91.2%91.2%
91.2 % 765 / 839 95.1 % 116 / 122
ZX.c
94.0%94.0%
94.0 % 552 / 587 95.1 % 77 / 81
alglin1.c
93.3%93.3%
93.3 % 3424 / 3669 94.7 % 338 / 357
alglin2.c
90.6%90.6%
90.6 % 953 / 1052 94.9 % 74 / 78
alglin3.c
91.6%91.6%
91.6 % 466 / 509 87.8 % 43 / 49
aprcl.c
84.6%84.6%
84.6 % 609 / 720 98.1 % 51 / 52
arith1.c
92.5%92.5%
92.5 % 2944 / 3183 93.8 % 272 / 290
arith2.c
93.5%93.5%
93.5 % 600 / 642 96.7 % 88 / 91
base1.c
95.0%95.0%
95.0 % 1523 / 1603 87.5 % 112 / 128
base2.c
94.9%94.9%
94.9 % 2010 / 2117 98.2 % 163 / 166
base3.c
93.7%93.7%
93.7 % 1618 / 1726 94.8 % 181 / 191
base4.c
90.3%90.3%
90.3 % 1402 / 1552 90.9 % 140 / 154
base5.c
92.5%92.5%
92.5 % 1031 / 1114 94.7 % 72 / 76
bb_group.c
92.6%92.6%
92.6 % 538 / 581 97.2 % 35 / 36
bb_hnf.c
93.9%93.9%
93.9 % 600 / 639 92.7 % 51 / 55
bibli1.c
95.1%95.1%
95.1 % 1028 / 1081 91.4 % 64 / 70
bibli2.c
97.3%97.3%
97.3 % 1034 / 1063 97.9 % 93 / 95
bit.c
91.2%91.2%
91.2 % 372 / 408 91.7 % 33 / 36
bnflog.c
98.2%98.2%
98.2 % 275 / 280 100.0 % 24 / 24
buch1.c
94.8%94.8%
94.8 % 635 / 670 93.6 % 44 / 47
buch2.c
93.6%93.6%
93.6 % 2338 / 2499 94.1 % 144 / 153
buch3.c
94.2%94.2%
94.2 % 1392 / 1477 96.3 % 104 / 108
buch4.c
80.6%80.6%
80.6 % 390 / 484 81.8 % 27 / 33
char.c
97.3%97.3%
97.3 % 783 / 805 100.0 % 63 / 63
concat.c
90.5%90.5%
90.5 % 304 / 336 100.0 % 15 / 15
crvwtors.c
83.9%83.9%
83.9 % 270 / 322 82.8 % 24 / 29
dirichlet.c
95.5%95.5%
95.5 % 84 / 88 100.0 % 8 / 8
ecpp.c
90.5%90.5%
90.5 % 618 / 683 94.2 % 81 / 86
ellanal.c
91.3%91.3%
91.3 % 669 / 733 93.2 % 55 / 59
elliptic.c
93.9%93.9%
93.9 % 3733 / 3975 98.0 % 341 / 348
ellisog.c
98.3%98.3%
98.3 % 927 / 943 100.0 % 78 / 78
ellpadic.c
96.0%96.0%
96.0 % 580 / 604 100.0 % 47 / 47
ellsea.c
95.8%95.8%
95.8 % 1117 / 1166 97.6 % 81 / 83
elltors.c
97.3%97.3%
97.3 % 394 / 405 91.7 % 22 / 24
galconj.c
95.4%95.4%
95.4 % 1600 / 1677 98.0 % 99 / 101
gen1.c
94.2%94.2%
94.2 % 1720 / 1826 100.0 % 89 / 89
gen2.c
87.7%87.7%
87.7 % 1315 / 1499 92.5 % 135 / 146
gen3.c
92.9%92.9%
92.9 % 2090 / 2249 96.4 % 213 / 221
hnf_snf.c
91.0%91.0%
91.0 % 1515 / 1665 94.6 % 87 / 92
hyperell.c
95.8%95.8%
95.8 % 482 / 503 100.0 % 41 / 41
ifactor1.c
80.1%80.1%
80.1 % 1451 / 1812 87.0 % 87 / 100
kummer.c
86.5%86.5%
86.5 % 741 / 857 91.5 % 54 / 59
lfun.c
95.6%95.6%
95.6 % 1333 / 1394 99.3 % 133 / 134
lfunutils.c
89.8%89.8%
89.8 % 1347 / 1500 91.9 % 124 / 135
lll.c
91.8%91.8%
91.8 % 423 / 461 93.3 % 28 / 30
map.c
95.5%95.5%
95.5 % 275 / 288 100.0 % 33 / 33
matperm.c
100.0%
100.0 % 78 / 78 100.0 % 4 / 4
mellininv.c
96.3%96.3%
96.3 % 314 / 326 96.7 % 29 / 30
mftrace.c
97.6%97.6%
97.6 % 7082 / 7255 99.7 % 731 / 733
modsym.c
97.4%97.4%
97.4 % 2548 / 2615 99.6 % 274 / 275
nffactor.c
92.5%92.5%
92.5 % 1149 / 1242 94.5 % 69 / 73
perm.c
93.3%93.3%
93.3 % 653 / 700 94.9 % 75 / 79
polarit1.c
96.2%96.2%
96.2 % 308 / 320 100.0 % 30 / 30
polarit2.c
90.4%90.4%
90.4 % 1798 / 1989 95.4 % 167 / 175
polarit3.c
87.3%87.3%
87.3 % 1304 / 1493 89.8 % 141 / 157
polclass.c
97.2%97.2%
97.2 % 838 / 862 98.3 % 59 / 60
polmodular.c
96.9%96.9%
96.9 % 2276 / 2348 100.0 % 142 / 142
prime.c
90.9%90.9%
90.9 % 640 / 704 96.0 % 72 / 75
qfisom.c
97.0%97.0%
97.0 % 998 / 1029 100.0 % 55 / 55
qfsolve.c
98.5%98.5%
98.5 % 594 / 603 100.0 % 30 / 30
random.c
100.0%
100.0 % 141 / 141 100.0 % 16 / 16
rootpol.c
91.4%91.4%
91.4 % 1514 / 1656 94.0 % 109 / 116
subcyclo.c
94.9%94.9%
94.9 % 522 / 550 97.6 % 40 / 41
subgroup.c
95.0%95.0%
95.0 % 343 / 361 100.0 % 22 / 22
trans1.c
97.4%97.4%
97.4 % 2028 / 2083 98.7 % 151 / 153
trans2.c
96.3%96.3%
96.3 % 1007 / 1046 100.0 % 65 / 65
trans3.c
95.5%95.5%
95.5 % 1905 / 1994 98.3 % 117 / 119
volcano.c
96.8%96.8%
96.8 % 330 / 341 100.0 % 22 / 22
zetamult.c
98.4%98.4%
98.4 % 246 / 250 95.5 % 21 / 22

Generated by: LCOV version 1.13