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 - RgV.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 21501-1931cb9) Lines: 475 536 88.6 %
Date: 2017-12-16 06:20:36 Functions: 88 96 91.7 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
RgC_RgM_mul 0
RgC_RgV_mul 1687
RgC_Rg_add 3372912
RgC_Rg_div 1117616
RgC_Rg_mul 5410523
RgC_Rg_sub 21105
RgC_add 10026901
RgC_add_i 12913463
RgC_is_ei 0
RgC_neg 126076
RgC_neg_i 3160471
RgC_sub 1737482
RgC_sub_i 1776801
RgM_RgC_mul 9237445
RgM_RgC_mul_i 10597587
RgM_RgV_mul 0
RgM_Rg_add 5648
RgM_Rg_add_shallow 77
RgM_Rg_div 136659
RgM_Rg_mul 129940
RgM_Rg_sub 133
RgM_Rg_sub_shallow 50284
RgM_add 592088
RgM_det_triangular 15169
RgM_is_QM 1610
RgM_is_ZM 348768
RgM_isdiagonal 329
RgM_isidentity 12201
RgM_isscalar 23563
RgM_liftred 11788
RgM_mul 2456712
RgM_mul_FpM 56238
RgM_mul_FqM 84
RgM_mul_QXQM 3794
RgM_mul_ZXQM 2030
RgM_mul_fast 2437133
RgM_multosym 0
RgM_neg 557711
RgM_powers 154
RgM_sqr 1113
RgM_sqr_QXQM 7
RgM_sqr_ZXQM 133
RgM_sqr_fast 1078
RgM_sub 10174
RgM_sumcol 362
RgM_transmul 0
RgM_transmultosym 447
RgM_zc_mul 71631
RgM_zc_mul_i 107317
RgM_zm_mul 9768
RgMrow_RgC_mul 3437
RgMrow_RgC_mul_i 71442028
RgMrow_zc_mul 69937
RgMrow_zc_mul_i 416110
RgV_RgC_mul 142461
RgV_RgM_mul 56695
RgV_Rg_mul 17972
RgV_add 603812
RgV_dotproduct 125466
RgV_dotproduct_i 1093324
RgV_dotsquare 1197
RgV_is_ZMV 21
RgV_isin 21735
RgV_kill0 4102
RgV_neg 24277
RgV_prod 39553
RgV_sub 74690
RgV_sum 353405
RgV_sumpart 518
RgV_sumpart2 0
RgV_zc_mul 6594
RgV_zc_mul_i 37483
RgV_zm_mul 7452
RgX_RgMV_eval 462
RgX_RgM_eval 1015
RgX_is_monic_ZX 3843
Rg_RgC_sub 101579
_RgM_add 2114
_RgM_cmul 3591
_RgM_mul 322
_RgM_one 2912
_RgM_red 1932
_RgM_sqr 133
_RgM_sub 0
_RgM_zero 0
_gmul 727155
fill_scalmat 3692322
gram_matrix 119
isdiagonal 308
matid 1836848
scalarcol 77925
scalarcol_i 362474
scalarcol_shallow 284549
scalarmat 436194
scalarmat_s 140
scalarmat_shallow 1419147

Generated by: LCOV version 1.11