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 - FpXX.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 16804-345a01c) Lines: 581 626 92.8 %
Date: 2014-09-20 Functions: 72 76 94.7 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 248 331 74.9 %

Function Name Sort by function name Hit count Sort by hit count
FpXQXQV_autpow 121
FpXQXQV_autsum 66
FpXQXQ_autpow_mul 2
FpXQXQ_autpow_sqr 121
FpXQXQ_autsum_mul 69
FpXQXQ_autsum_sqr 66
FpXQXQ_div 455
FpXQXQ_inv 455
FpXQXQ_invsafe 455
FpXQXQ_matrix_pow 51
FpXQXQ_mul 5074
FpXQXQ_pow 253
FpXQXQ_powers 120
FpXQXQ_sqr 17685
FpXQXV_prod 109
FpXQX_FpXQXQV_eval 138
FpXQX_FpXQXQ_eval 123
FpXQX_FpXQ_mul 59374
FpXQX_digits 133
FpXQX_divrem 149681
FpXQX_divrem_Barrett 0
FpXQX_divrem_Barrett_noGC 1904
FpXQX_divrem_Barrettspec 2331
FpXQX_divrem_basecase 173995
FpXQX_extgcd 5292
FpXQX_fromdigits 49
FpXQX_gcd 3948
FpXQX_invBarrett 1904
FpXQX_invBarrett_Newton 1561
FpXQX_invBarrett_basecase 343
FpXQX_mul 188270
FpXQX_mulspec 211846
FpXQX_powu 0
FpXQX_recipspec 4662
FpXQX_red 158407
FpXQX_rem 29581
FpXQX_rem_Barrett 0
FpXQX_sqr 18532
FpXX_FpX_mul 5093
FpXX_FpX_mulspec 11814
FpXX_Fp_mul 43519
FpXX_add 248201
FpXX_mulu 34580
FpXX_neg 63
FpXX_red 35178
FpXX_sub 12929
FpXX_subspec 2331
FpXYQQ_mul 42
FpXYQQ_pow 1428
FpXYQQ_redswap 112
FpXYQQ_sqr 70
FpXY_FpXQV_evalx 296
FpXY_FpXQ_evalx 35
FpXY_FpY_mulspec 6721
FpXY_eval 8379
FpXY_evalx 16234
FpXY_evaly 11032
Kronecker_to_FpXQX 221394
Kronecker_to_ZXX 84343
ZXX_copy 112
ZXX_is_ZX 18532
ZXX_is_ZX_spec 442224
ZXX_lgrenormalizespec 32802
ZXX_mul_Kronecker 130865
_FpXQXQ_add 4832
_FpXQXQ_cmul 5093
_FpXQXQ_mul 3619
_FpXQXQ_one 1308
_FpXQXQ_red 1302
_FpXQXQ_sqr 17279
_FpXQXQ_zero 0
_FpXQX_add 448
_FpXQX_divrem 3815
_FpXQX_mul 944
_FpXQX_sqr 567
to_FlxqX 131286

Generated by: LCOV version 1.9