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-bordeaux1.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 17611-4505802) Lines: 68299 74445 91.7 %
Date: 2015-03-06 Functions: 5797 6171 93.9 %
Legend: Rating: low: < 75 % medium: >= 75 % high: >= 90 % Branches: 40267 51510 78.2 %

Filename Sort by name Line Coverage Sort by line coverage Functions Sort by function coverage Branches Sort by branch coverage
F2x.c
92.6%92.6%
92.6 % 869 / 938 97.2 % 104 / 107 78.3 % 472 / 603
F2xqE.c
94.3%94.3%
94.3 % 367 / 389 94.1 % 48 / 51 80.5 % 120 / 149
FF.c
91.8%91.8%
91.8 % 825 / 899 95.1 % 98 / 103 79.3 % 333 / 420
Fle.c
85.3%85.3%
85.3 % 232 / 272 78.9 % 30 / 38 80.0 % 80 / 100
Flx.c
93.9%93.9%
93.9 % 2292 / 2440 95.9 % 284 / 296 83.9 % 1172 / 1397
FlxqE.c
94.4%94.4%
94.4 % 856 / 907 97.8 % 91 / 93 73.4 % 301 / 410
Flxq_log.c
93.9%93.9%
93.9 % 419 / 446 100.0 % 27 / 27 72.9 % 191 / 262
FpE.c
92.2%92.2%
92.2 % 916 / 994 91.7 % 100 / 109 81.4 % 447 / 549
FpV.c
74.1%74.1%
74.1 % 585 / 790 74.8 % 80 / 107 61.2 % 296 / 484
FpX.c
93.2%93.2%
93.2 % 1018 / 1092 97.8 % 131 / 134 79.0 % 490 / 620
FpXX.c
93.9%93.9%
93.9 % 603 / 642 96.2 % 76 / 79 77.3 % 262 / 339
FpX_factor.c
94.2%94.2%
94.2 % 1627 / 1727 94.1 % 144 / 153 78.7 % 901 / 1145
Hensel.c
95.9%95.9%
95.9 % 486 / 507 97.2 % 35 / 36 80.2 % 186 / 232
QX_factor.c
95.0%95.0%
95.0 % 727 / 765 95.3 % 41 / 43 81.5 % 479 / 588
Qfb.c
92.4%92.4%
92.4 % 835 / 904 93.8 % 91 / 97 74.4 % 422 / 567
RgV.c
84.6%84.6%
84.6 % 418 / 494 86.1 % 68 / 79 69.7 % 253 / 363
RgX.c
88.1%88.1%
88.1 % 1181 / 1341 94.0 % 125 / 133 79.7 % 792 / 994
ZG.c
52.6%52.6%
52.6 % 30 / 57 58.3 % 7 / 12 38.6 % 17 / 44
ZV.c
91.6%91.6%
91.6 % 578 / 631 91.9 % 91 / 99 84.0 % 383 / 456
ZX.c
94.3%94.3%
94.3 % 432 / 458 94.7 % 54 / 57 88.3 % 278 / 315
alglin1.c
94.2%94.2%
94.2 % 2212 / 2347 93.1 % 202 / 217 81.1 % 1457 / 1797
alglin2.c
89.2%89.2%
89.2 % 964 / 1081 92.1 % 70 / 76 75.4 % 677 / 898
alglin3.c
91.5%91.5%
91.5 % 442 / 483 87.0 % 40 / 46 80.3 % 343 / 427
arith1.c
91.1%91.1%
91.1 % 2493 / 2736 92.9 % 209 / 225 75.9 % 1697 / 2236
arith2.c
84.6%84.6%
84.6 % 615 / 727 89.7 % 78 / 87 69.5 % 340 / 489
base1.c
93.8%93.8%
93.8 % 1526 / 1626 88.1 % 111 / 126 80.1 % 968 / 1209
base2.c
86.0%86.0%
86.0 % 1891 / 2199 93.8 % 150 / 160 73.2 % 1039 / 1420
base3.c
95.4%95.4%
95.4 % 1333 / 1397 97.6 % 122 / 125 85.9 % 747 / 870
base4.c
93.8%93.8%
93.8 % 1339 / 1428 94.7 % 124 / 131 83.9 % 795 / 948
base5.c
94.3%94.3%
94.3 % 906 / 961 96.9 % 63 / 65 77.7 % 488 / 628
bb_group.c
92.8%92.8%
92.8 % 487 / 525 96.9 % 31 / 32 81.0 % 332 / 410
bibli1.c
95.2%95.2%
95.2 % 945 / 993 90.0 % 54 / 60 80.7 % 645 / 799
bibli2.c
95.9%95.9%
95.9 % 1018 / 1061 95.7 % 88 / 92 81.4 % 753 / 925
bit.c
99.7%
99.7 % 302 / 303 100.0 % 28 / 28 86.6 % 175 / 202
buch1.c
94.6%94.6%
94.6 % 635 / 671 93.6 % 44 / 47 79.8 % 427 / 535
buch2.c
91.5%91.5%
91.5 % 2275 / 2487 93.8 % 135 / 144 78.2 % 1386 / 1773
buch3.c
94.4%94.4%
94.4 % 1336 / 1416 91.9 % 91 / 99 80.6 % 716 / 888
buch4.c
81.7%81.7%
81.7 % 380 / 465 80.6 % 25 / 31 61.8 % 207 / 335
concat.c
91.3%91.3%
91.3 % 305 / 334 100.0 % 15 / 15 77.5 % 269 / 347
crvwtors.c
98.4%98.4%
98.4 % 317 / 322 100.0 % 29 / 29 90.3 % 84 / 93
ellanal.c
91.9%91.9%
91.9 % 672 / 731 96.6 % 56 / 58 81.7 % 303 / 371
elliptic.c
90.7%90.7%
90.7 % 3142 / 3464 94.9 % 279 / 294 70.6 % 1529 / 2166
ellisog.c
98.4%98.4%
98.4 % 302 / 307 100.0 % 21 / 21 84.5 % 82 / 97
ellpadicL.c
66.7%66.7%
66.7 % 62 / 93 50.0 % 3 / 6 39.7 % 27 / 68
elltors.c
97.0%97.0%
97.0 % 382 / 394 91.3 % 21 / 23 81.8 % 269 / 329
galconj.c
91.4%91.4%
91.4 % 1430 / 1564 95.6 % 86 / 90 77.4 % 829 / 1071
gen1.c
91.6%91.6%
91.6 % 1774 / 1937 100.0 % 88 / 88 82.0 % 1182 / 1442
gen2.c
87.4%87.4%
87.4 % 1252 / 1432 89.8 % 123 / 137 77.9 % 1050 / 1348
gen3.c
91.0%91.0%
91.0 % 1984 / 2180 95.1 % 196 / 206 78.6 % 1502 / 1912
hnf_snf.c
90.3%90.3%
90.3 % 1341 / 1485 92.3 % 72 / 78 79.9 % 1107 / 1385
hyperell.c
94.9%94.9%
94.9 % 410 / 432 100.0 % 34 / 34 71.8 % 171 / 238
ifactor1.c
82.0%82.0%
82.0 % 1382 / 1685 89.3 % 75 / 84 69.2 % 1051 / 1519
lll.c
91.2%91.2%
91.2 % 447 / 490 93.5 % 29 / 31 79.5 % 314 / 395
modsym.c
97.4%97.4%
97.4 % 1483 / 1522 100.0 % 158 / 158 84.8 % 586 / 691
nffactor.c
91.9%91.9%
91.9 % 1119 / 1218 94.3 % 66 / 70 76.7 % 643 / 838
perm.c
94.1%94.1%
94.1 % 539 / 573 95.3 % 61 / 64 87.5 % 295 / 337
polarit1.c
96.0%96.0%
96.0 % 314 / 327 100.0 % 31 / 31 70.1 % 185 / 264
polarit2.c
86.5%86.5%
86.5 % 1506 / 1742 92.5 % 123 / 133 72.0 % 1152 / 1600
polarit3.c
86.2%86.2%
86.2 % 1440 / 1670 88.4 % 130 / 147 69.0 % 802 / 1163
polclass.c
94.6%94.6%
94.6 % 490 / 518 96.6 % 28 / 29 81.5 % 207 / 254
polmodular.c
96.8%96.8%
96.8 % 817 / 844 100.0 % 60 / 60 76.4 % 181 / 237
prime.c
91.8%91.8%
91.8 % 569 / 620 95.3 % 61 / 64 78.5 % 410 / 522
qfisom.c
95.6%95.6%
95.6 % 917 / 959 100.0 % 49 / 49 86.3 % 611 / 708
qfsolve.c
98.5%98.5%
98.5 % 595 / 604 100.0 % 30 / 30 90.6 % 358 / 395
random.c
98.6%98.6%
98.6 % 136 / 138 100.0 % 16 / 16 87.2 % 95 / 109
rootpol.c
90.8%90.8%
90.8 % 1527 / 1681 94.8 % 109 / 115 83.0 % 870 / 1048
subcyclo.c
93.6%93.6%
93.6 % 527 / 563 97.4 % 38 / 39 79.3 % 276 / 348
subgroup.c
95.3%95.3%
95.3 % 345 / 362 100.0 % 22 / 22 88.3 % 241 / 273
trans1.c
97.3%97.3%
97.3 % 1699 / 1746 98.4 % 127 / 129 87.3 % 1061 / 1216
trans2.c
96.5%96.5%
96.5 % 889 / 921 100.0 % 57 / 57 82.3 % 585 / 711
trans3.c
90.2%90.2%
90.2 % 1627 / 1804 94.5 % 104 / 110 73.4 % 801 / 1091
volcano.c
88.6%88.6%
88.6 % 163 / 184 100.0 % 10 / 10 73.5 % 72 / 98

Generated by: LCOV version 1.9