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 20783-cec4728) Lines: 89263 97209 91.8 %
Date: 2017-06-27 05:59:24 Functions: 7812 8299 94.1 %
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.7%92.7%
92.7 % 1243 / 1341 95.1 % 154 / 162
F2xqE.c
94.2%94.2%
94.2 % 420 / 446 94.8 % 55 / 58
FF.c
94.9%94.9%
94.9 % 939 / 989 96.6 % 113 / 117
Fle.c
83.2%83.2%
83.2 % 232 / 279 75.0 % 30 / 40
Flx.c
91.7%91.7%
91.7 % 2793 / 3046 92.3 % 338 / 366
FlxqE.c
97.0%97.0%
97.0 % 916 / 944 99.0 % 96 / 97
Flxq_log.c
94.2%94.2%
94.2 % 440 / 467 100.0 % 28 / 28
FpE.c
90.8%90.8%
90.8 % 970 / 1068 90.4 % 103 / 114
FpV.c
76.6%76.6%
76.6 % 648 / 846 78.2 % 93 / 119
FpX.c
93.2%93.2%
93.2 % 1238 / 1329 96.7 % 147 / 152
FpXQX_factor.c
90.1%90.1%
90.1 % 1088 / 1207 91.8 % 89 / 97
FpXX.c
86.7%86.7%
86.7 % 716 / 826 92.1 % 93 / 101
FpX_factor.c
88.6%88.6%
88.6 % 1418 / 1600 92.0 % 126 / 137
Hensel.c
96.4%96.4%
96.4 % 533 / 553 97.9 % 47 / 48
QX_factor.c
95.9%95.9%
95.9 % 719 / 750 97.6 % 41 / 42
Qfb.c
91.1%91.1%
91.1 % 844 / 926 92.0 % 92 / 100
RgV.c
86.4%86.4%
86.4 % 465 / 538 89.8 % 79 / 88
RgX.c
89.7%89.7%
89.7 % 1306 / 1456 89.2 % 140 / 157
ZG.c
55.7%55.7%
55.7 % 44 / 79 57.1 % 8 / 14
ZV.c
91.1%91.1%
91.1 % 771 / 846 94.8 % 110 / 116
ZX.c
94.1%94.1%
94.1 % 509 / 541 95.8 % 69 / 72
alglin1.c
95.1%95.1%
95.1 % 3196 / 3362 95.3 % 287 / 301
alglin2.c
89.1%89.1%
89.1 % 907 / 1018 93.1 % 67 / 72
alglin3.c
91.6%91.6%
91.6 % 470 / 513 87.5 % 42 / 48
aprcl.c
84.6%84.6%
84.6 % 610 / 721 98.1 % 51 / 52
arith1.c
92.4%92.4%
92.4 % 2723 / 2946 93.8 % 240 / 256
arith2.c
93.4%93.4%
93.4 % 596 / 638 96.6 % 86 / 89
base1.c
94.3%94.3%
94.3 % 1414 / 1499 87.3 % 110 / 126
base2.c
86.1%86.1%
86.1 % 2011 / 2335 93.6 % 161 / 172
base3.c
94.0%94.0%
94.0 % 1593 / 1695 95.2 % 180 / 189
base4.c
89.9%89.9%
89.9 % 1314 / 1462 91.0 % 131 / 144
base5.c
92.6%92.6%
92.6 % 1031 / 1113 94.7 % 72 / 76
bb_group.c
92.5%92.5%
92.5 % 518 / 560 97.1 % 33 / 34
bibli1.c
95.4%95.4%
95.4 % 988 / 1036 90.8 % 59 / 65
bibli2.c
97.4%97.4%
97.4 % 1051 / 1079 97.9 % 95 / 97
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 % 24 / 24
buch1.c
94.8%94.8%
94.8 % 636 / 671 93.6 % 44 / 47
buch2.c
93.5%93.5%
93.5 % 2332 / 2493 94.7 % 143 / 151
buch3.c
94.1%94.1%
94.1 % 1392 / 1479 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 % 752 / 773 100.0 % 62 / 62
concat.c
90.5%90.5%
90.5 % 304 / 336 100.0 % 15 / 15
crvwtors.c
98.8%98.8%
98.8 % 318 / 322 100.0 % 29 / 29
dirichlet.c
95.5%95.5%
95.5 % 84 / 88 100.0 % 8 / 8
ellanal.c
91.7%91.7%
91.7 % 667 / 727 94.8 % 55 / 58
elliptic.c
94.0%94.0%
94.0 % 4159 / 4425 97.6 % 370 / 379
ellisog.c
96.7%96.7%
96.7 % 712 / 736 100.0 % 57 / 57
ellsea.c
85.8%85.8%
85.8 % 1000 / 1165 92.8 % 77 / 83
elltors.c
97.3%97.3%
97.3 % 392 / 403 91.7 % 22 / 24
galconj.c
95.2%95.2%
95.2 % 1557 / 1635 98.0 % 98 / 100
gen1.c
93.2%93.2%
93.2 % 1782 / 1912 100.0 % 89 / 89
gen2.c
87.6%87.6%
87.6 % 1345 / 1535 92.6 % 137 / 148
gen3.c
92.5%92.5%
92.5 % 2108 / 2279 95.9 % 212 / 221
hnf_snf.c
91.0%91.0%
91.0 % 1490 / 1637 94.4 % 84 / 89
hyperell.c
95.9%95.9%
95.9 % 490 / 511 100.0 % 41 / 41
ifactor1.c
81.1%81.1%
81.1 % 1428 / 1760 87.5 % 84 / 96
kummer.c
86.0%86.0%
86.0 % 719 / 836 91.1 % 51 / 56
lfun.c
95.5%95.5%
95.5 % 1326 / 1389 98.5 % 133 / 135
lfunutils.c
93.4%93.4%
93.4 % 1158 / 1240 96.3 % 104 / 108
lll.c
91.3%91.3%
91.3 % 422 / 462 93.3 % 28 / 30
map.c
90.3%90.3%
90.3 % 260 / 288 90.9 % 30 / 33
matperm.c
100.0%
100.0 % 76 / 76 100.0 % 4 / 4
mellininv.c
97.2%97.2%
97.2 % 317 / 326 100.0 % 30 / 30
mftrace.c
83.5%83.5%
83.5 % 4167 / 4990 88.2 % 420 / 476
modsym.c
95.4%95.4%
95.4 % 2114 / 2215 99.1 % 224 / 226
nffactor.c
92.1%92.1%
92.1 % 1115 / 1210 94.2 % 65 / 69
perm.c
93.2%93.2%
93.2 % 594 / 637 95.8 % 69 / 72
polarit1.c
95.6%95.6%
95.6 % 306 / 320 100.0 % 30 / 30
polarit2.c
89.3%89.3%
89.3 % 1523 / 1705 95.0 % 132 / 139
polarit3.c
85.1%85.1%
85.1 % 1048 / 1232 89.1 % 114 / 128
polclass.c
96.3%96.3%
96.3 % 925 / 961 98.3 % 57 / 58
polmodular.c
93.8%93.8%
93.8 % 2461 / 2625 97.3 % 146 / 150
prime.c
90.6%90.6%
90.6 % 581 / 641 95.6 % 65 / 68
qfisom.c
95.9%95.9%
95.9 % 985 / 1027 100.0 % 54 / 54
qfsolve.c
98.5%98.5%
98.5 % 595 / 604 100.0 % 30 / 30
random.c
98.5%98.5%
98.5 % 133 / 135 100.0 % 16 / 16
rootpol.c
91.3%91.3%
91.3 % 1503 / 1647 94.0 % 109 / 116
subcyclo.c
95.0%95.0%
95.0 % 528 / 556 97.4 % 38 / 39
subgroup.c
95.0%95.0%
95.0 % 344 / 362 100.0 % 22 / 22
trans1.c
97.5%97.5%
97.5 % 1947 / 1997 98.6 % 141 / 143
trans2.c
96.0%96.0%
96.0 % 993 / 1034 100.0 % 63 / 63
trans3.c
95.5%95.5%
95.5 % 1800 / 1884 98.3 % 114 / 116
volcano.c
93.7%93.7%
93.7 % 418 / 446 100.0 % 22 / 22
zetamult.c
98.4%98.4%
98.4 % 246 / 250 95.5 % 21 / 22

Generated by: LCOV version 1.11