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 - ZV.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20068-a012b06) Lines: 761 837 90.9 %
Date: 2017-01-16 05:49:55 Functions: 108 114 94.7 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Flc_lincomb1_inplace 8619393
RgM_check_ZM 122180
RgV_check_ZV 479368
ZC_ZV_mul 0
ZC_Z_add 177608
ZC_Z_div 168924
ZC_Z_divexact 2470689
ZC_Z_mul 2614788
ZC_Z_sub 0
ZC_add 1015812
ZC_add_i 11287060
ZC_copy 2941779
ZC_hnfremdiv 788735
ZC_is_ei 63357
ZC_lincomb 9580159
ZC_lincomb1 2397497
ZC_lincomb1_inplace 39174817
ZC_lincomb_1 437070
ZC_neg 2207103
ZC_reducemodlll 153286
ZC_reducemodmatrix 168917
ZC_reducemodmatrix_i 168917
ZC_sub 1138260
ZC_sub_i 1862761
ZC_z_mul 13657
ZMV_to_zmV 21
ZM_ZC_mul 5252178
ZM_ZC_mul_i 20237354
ZM_Z_div 10136
ZM_Z_divexact 788859
ZM_Z_mul 483952
ZM_add 1004251
ZM_copy 173888
ZM_det_triangular 793108
ZM_diag_mul 36499
ZM_equal 427294
ZM_hnfdivrem 27322
ZM_isdiagonal 54353
ZM_ishnf 65163
ZM_isidentity 264155
ZM_isscalar 15311
ZM_max_lg 1472
ZM_mul 4351520
ZM_mul_classical 4416326
ZM_mul_diag 14
ZM_mul_i 4426539
ZM_mul_sw 11249
ZM_multosym 0
ZM_nc_mul_i 651499
ZM_neg 267701
ZM_nm_mul 621585
ZM_pow 0
ZM_powu 420
ZM_reducemodlll 0
ZM_reducemodmatrix 4396
ZM_reducemodmatrix_i 4396
ZM_sqr 1036
ZM_sqr_i 1036
ZM_sub 639428
ZM_supnorm 2240
ZM_to_zm 868
ZM_togglesign 0
ZM_transmul 497
ZM_transmultosym 160265
ZM_zc_mul 1484580
ZM_zc_mul_i 2696020
ZM_zm_mul 588168
ZMrow_ZC_mul 23919005
ZMrow_ZC_mul_i 149974942
ZRED 415415
ZV_ZM_mul 6342
ZV_abscmp 3480
ZV_cmp 608387
ZV_content 9912
ZV_dotproduct 10042305
ZV_dotproduct_i 11961476
ZV_dotsquare 4249990
ZV_equal 7761952
ZV_equal0 515127
ZV_equal_lg 9144176
ZV_max_lg 10612
ZV_neg_inplace 55062
ZV_prod 7379891
ZV_sum 56
ZV_to_nv 6566
ZV_togglesign 1833634
ZV_zc_mul 1645
Z_ZC_sub 144300
ZincrementalGS 579985
Zupdate_row 227168
_ZM_mul 56
_ZM_sqr 560
_mulii 272787916
add_slices 89992
check_ZV 388546
nm_Z_mul 621585
subtract_slices 78743
vecsmall_prod 14694393
zmV_to_ZMV 98
zm_to_Flm 15792
zm_to_ZM 368844
zvV_equal 343
zv_ZM_mul 1295
zv_content 978901
zv_dotproduct 151007458
zv_equal 22425535
zv_equal0 17347680
zv_neg 241211
zv_neg_inplace 248
zv_prod 291137
zv_prod_Z 364890
zv_sum 1582
zv_to_Flv 223314
zv_z_mul 8234

Generated by: LCOV version 1.11