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 - ZX.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 17097-9391e68) Lines: 415 447 92.8 %
Date: 2014-11-21 Functions: 52 56 92.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 270 311 86.8 %

Function Name Sort by function name Hit count Sort by hit count
RgX_check_QX 0
RgX_check_ZX 10165
RgX_check_ZXX 45
ZXT_remi2n 10310
ZXV_Z_mul 2700
ZXV_dotproduct 29880
ZXV_equal 25
ZXV_remi2n 0
ZXX_Z_add_shallow 30
ZXX_Z_divexact 21775
ZXX_Z_mul 1175
ZXX_max_lg 300
ZXX_renormalize 110201031
ZXX_to_Kronecker 288766
ZXX_to_Kronecker_spec 614350
ZX_Z_add 22316
ZX_Z_add_shallow 3495
ZX_Z_divexact 872917
ZX_Z_mul 2608972
ZX_Z_sub 12260
ZX_add 3218140
ZX_copy 47184
ZX_deriv 949118
ZX_equal 87700
ZX_eval1 3370
ZX_eval2BILspec 81067411
ZX_expispec 82627867
ZX_max_lg 3235
ZX_mod_Xnm1 847885
ZX_mul 55817866
ZX_mulspec 55972912
ZX_mulspec_mulii 40154914
ZX_mulu 43010
ZX_neg 2543
ZX_rem 87675
ZX_remi2n 30040
ZX_rescale 6930
ZX_rescale2n 14024
ZX_rescale_lt 0
ZX_shifti 59082
ZX_sqr 2432604
ZX_sqrspec 2432604
ZX_sqrspec_basecase 1560456
ZX_sqrspec_basecase_limb 16711736
ZX_sqrspec_sqri 757583
ZX_sub 183653
ZX_val 7682
ZX_valrem 6119793
ZX_valspec 109785497
Z_ZX_mulshiftspec 13523010
Z_ZX_sub 211790
Z_mod2BIL_ZX 40912497
Z_sqrshiftspec_ZX 111610
scalar_ZX 10297
scalar_ZX_shallow 9092
zx_to_ZX 0

Generated by: LCOV version 1.9