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.8.0 lcov report (development 18890-99e9e62) Lines: 77474 84535 91.6 %
Date: 2016-05-02 Functions: 6629 7058 93.9 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 % Branches: 45358 57826 78.4 %

Filename Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage Branches Sort by branch coverage
ZG.c
48.4%48.4%
48.4 % 44 / 91 47.1 % 8 / 17 40.0 % 28 / 70
FpV.c
74.8%74.8%
74.8 % 610 / 815 75.2 % 85 / 113 63.0 % 311 / 494
buch4.c
81.7%81.7%
81.7 % 385 / 471 80.6 % 25 / 31 61.9 % 208 / 336
ifactor1.c
82.2%82.2%
82.2 % 1387 / 1687 89.3 % 75 / 84 69.4 % 1055 / 1521
Fle.c
83.2%83.2%
83.2 % 232 / 279 75.0 % 30 / 40 78.4 % 80 / 102
ellsea.c
84.2%84.2%
84.2 % 951 / 1129 90.1 % 64 / 71 69.8 % 391 / 560
arith2.c
85.3%85.3%
85.3 % 620 / 727 91.0 % 81 / 89 71.0 % 346 / 487
base2.c
85.9%85.9%
85.9 % 1899 / 2210 93.7 % 149 / 159 73.3 % 1052 / 1436
polarit3.c
86.0%86.0%
86.0 % 1438 / 1672 88.6 % 132 / 149 69.1 % 799 / 1157
RgV.c
86.4%86.4%
86.4 % 438 / 507 89.0 % 73 / 82 71.0 % 265 / 373
polarit2.c
86.8%86.8%
86.8 % 1498 / 1725 91.7 % 121 / 132 72.7 % 1155 / 1588
gen2.c
87.7%87.7%
87.7 % 1316 / 1500 91.7 % 132 / 144 78.4 % 1114 / 1421
alglin2.c
87.8%87.8%
87.8 % 951 / 1083 92.1 % 70 / 76 74.3 % 676 / 910
Flx.c
87.9%87.9%
87.9 % 2523 / 2870 89.7 % 306 / 341 79.0 % 1297 / 1641
volcano.c
88.6%88.6%
88.6 % 163 / 184 100.0 % 10 / 10 75.5 % 74 / 98
FpXX.c
89.2%89.2%
89.2 % 712 / 798 93.9 % 93 / 99 79.8 % 320 / 401
trans3.c
89.6%89.6%
89.6 % 1712 / 1911 92.3 % 108 / 117 74.4 % 885 / 1190
ZV.c
90.1%90.1%
90.1 % 727 / 807 93.6 % 103 / 110 82.2 % 477 / 580
RgX.c
90.0%90.0%
90.0 % 1233 / 1370 94.5 % 138 / 146 81.2 % 815 / 1004
hnf_snf.c
90.0%90.0%
90.0 % 1381 / 1534 92.6 % 75 / 81 79.3 % 1130 / 1425
map.c
90.3%90.3%
90.3 % 261 / 289 90.9 % 30 / 33 72.3 % 146 / 202
bit.c
91.0%91.0%
91.0 % 373 / 410 91.7 % 33 / 36 80.0 % 200 / 250
elliptic.c
91.0%91.0%
91.0 % 3262 / 3585 95.1 % 293 / 308 71.9 % 1647 / 2290
prime.c
91.2%91.2%
91.2 % 567 / 622 95.3 % 61 / 64 78.0 % 411 / 527
lll.c
91.2%91.2%
91.2 % 447 / 490 93.5 % 29 / 31 79.5 % 314 / 395
rootpol.c
91.3%91.3%
91.3 % 1513 / 1657 94.8 % 109 / 115 83.6 % 895 / 1071
concat.c
91.4%91.4%
91.4 % 310 / 339 100.0 % 15 / 15 77.0 % 275 / 357
alglin3.c
91.5%91.5%
91.5 % 462 / 505 87.2 % 41 / 47 80.0 % 353 / 441
FpE.c
91.5%91.5%
91.5 % 963 / 1053 92.2 % 106 / 115 82.4 % 459 / 557
nffactor.c
91.5%91.5%
91.5 % 1128 / 1233 92.9 % 65 / 70 76.7 % 649 / 846
galconj.c
91.5%91.5%
91.5 % 1435 / 1568 95.6 % 86 / 90 77.8 % 840 / 1079
gen3.c
91.5%91.5%
91.5 % 2025 / 2213 95.7 % 199 / 208 79.2 % 1549 / 1956
ellanal.c
91.8%91.8%
91.8 % 668 / 728 94.8 % 55 / 58 81.7 % 300 / 367
polmodular.c
92.1%92.1%
92.1 % 1508 / 1638 97.2 % 103 / 106 76.0 % 679 / 894
bb_group.c
92.3%92.3%
92.3 % 502 / 544 97.0 % 32 / 33 79.2 % 339 / 428
F2x.c
92.3%92.3%
92.3 % 1184 / 1283 96.2 % 151 / 157 77.5 % 591 / 763
buch2.c
92.4%92.4%
92.4 % 2305 / 2495 94.4 % 136 / 144 79.5 % 1412 / 1777
Qfb.c
92.6%92.6%
92.6 % 838 / 905 93.8 % 91 / 97 75.2 % 428 / 569
arith1.c
92.5%92.5%
92.5 % 2631 / 2844 94.2 % 229 / 243 77.4 % 1794 / 2317
gen1.c
92.6%92.6%
92.6 % 1791 / 1934 100.0 % 89 / 89 82.9 % 1190 / 1436
FpX_factor.c
92.6%92.6%
92.6 % 2153 / 2325 93.3 % 181 / 194 77.4 % 1100 / 1422
lfunutils.c
92.9%92.9%
92.9 % 1089 / 1172 97.8 % 90 / 92 70.3 % 489 / 696
base1.c
93.4%93.4%
93.4 % 1547 / 1657 88.6 % 117 / 132 80.7 % 984 / 1219
subcyclo.c
93.5%93.5%
93.5 % 528 / 565 97.4 % 38 / 39 79.1 % 277 / 350
FpX.c
93.5%93.5%
93.5 % 1106 / 1183 97.9 % 139 / 142 79.9 % 524 / 656
alglin1.c
93.6%93.6%
93.6 % 2263 / 2419 92.3 % 203 / 220 80.6 % 1506 / 1869
base4.c
93.8%93.8%
93.8 % 1413 / 1507 94.9 % 129 / 136 82.8 % 853 / 1030
Flxq_log.c
93.9%93.9%
93.9 % 419 / 446 100.0 % 27 / 27 72.9 % 191 / 262
F2xqE.c
94.1%94.1%
94.1 % 402 / 427 94.4 % 51 / 54 82.8 % 135 / 163
buch3.c
94.1%94.1%
94.1 % 1397 / 1484 91.3 % 95 / 104 81.5 % 760 / 932
base5.c
94.3%94.3%
94.3 % 906 / 961 96.9 % 63 / 65 77.7 % 488 / 628
ZX.c
94.3%94.3%
94.3 % 432 / 458 94.7 % 54 / 57 88.3 % 278 / 315
perm.c
94.4%94.4%
94.4 % 541 / 573 96.9 % 62 / 64 87.5 % 295 / 337
lfun.c
94.6%94.6%
94.6 % 1191 / 1259 98.4 % 122 / 124 82.8 % 560 / 676
buch1.c
94.6%94.6%
94.6 % 635 / 671 93.6 % 44 / 47 79.8 % 427 / 535
FF.c
94.8%94.8%
94.8 % 911 / 961 96.3 % 104 / 108 81.0 % 359 / 443
bibli1.c
94.8%94.8%
94.8 % 968 / 1021 90.6 % 58 / 64 81.3 % 671 / 825
polclass.c
94.9%94.9%
94.9 % 601 / 633 97.3 % 36 / 37 82.1 % 279 / 340
QX_factor.c
95.0%95.0%
95.0 % 727 / 765 95.3 % 41 / 43 81.6 % 480 / 588
trans2.c
95.2%95.2%
95.2 % 963 / 1012 98.4 % 62 / 63 81.8 % 657 / 803
subgroup.c
95.3%95.3%
95.3 % 345 / 362 100.0 % 22 / 22 88.3 % 241 / 273
base3.c
95.5%95.5%
95.5 % 1352 / 1416 97.6 % 124 / 127 86.2 % 767 / 890
Hensel.c
95.9%95.9%
95.9 % 487 / 508 97.2 % 35 / 36 80.3 % 188 / 234
FlxqE.c
95.9%95.9%
95.9 % 907 / 946 99.0 % 96 / 97 79.1 % 334 / 422
qfisom.c
95.9%95.9%
95.9 % 985 / 1027 100.0 % 54 / 54 86.3 % 668 / 774
char.c
96.0%96.0%
96.0 % 558 / 581 100.0 % 47 / 47 80.7 % 346 / 429
polarit1.c
96.1%96.1%
96.1 % 321 / 334 100.0 % 31 / 31 71.9 % 194 / 270
hyperell.c
96.2%96.2%
96.2 % 480 / 499 100.0 % 41 / 41 75.3 % 217 / 288
modsym.c
96.6%96.6%
96.6 % 1981 / 2051 99.5 % 210 / 211 83.6 % 853 / 1020
bibli2.c
96.8%96.8%
96.8 % 1042 / 1076 96.8 % 90 / 93 83.0 % 794 / 957
mellininv.c
97.2%97.2%
97.2 % 311 / 320 100.0 % 24 / 24 83.3 % 155 / 186
elltors.c
97.2%97.2%
97.2 % 383 / 394 91.3 % 21 / 23 82.4 % 271 / 329
trans1.c
97.3%97.3%
97.3 % 1826 / 1877 97.8 % 135 / 138 87.3 % 1151 / 1318
dirichlet.c
97.3%97.3%
97.3 % 109 / 112 100.0 % 13 / 13 83.5 % 81 / 97
crvwtors.c
98.4%98.4%
98.4 % 317 / 322 100.0 % 29 / 29 90.3 % 84 / 93
ellisog.c
98.5%98.5%
98.5 % 644 / 654 100.0 % 54 / 54 86.5 % 237 / 274
random.c
98.6%98.6%
98.6 % 136 / 138 100.0 % 16 / 16 88.1 % 96 / 109
qfsolve.c
98.5%98.5%
98.5 % 595 / 604 100.0 % 30 / 30 90.9 % 359 / 395
zetamult.c
100.0%
100.0 % 110 / 110 100.0 % 10 / 10 95.2 % 60 / 63

Generated by: LCOV version 1.9