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 - base3.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.1 lcov report (development 22726-9e20c6a88) Lines: 1618 1726 93.7 %
Date: 2018-06-23 05:36:28 Functions: 181 191 94.8 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
nfembed 0
oksigns 0
oksigns2 0
tablemul 0
zidealstar 0
zidealstarinit 0
zidealstarinitgen 0
zkadd 0
zkchinese 0
zksub 0
Q_mod_bid 7
famat_norm 7
ideallistarch 14
nfM_det 14
join_archunit 28
pr_equal 28
join_arch 56
join_bid_arch 56
idealstar0 63
nfeltembed 63
nfembed_i 91
idealprincipalunits 112
gpnfvalrem 147
nfinvmodideal 154
rnfeltnorm 231
nfdiveuc 259
nfdivrem 259
nfmod 259
zkchinese1init2 259
Idealstarprk 273
pl_convert 343
ideallist0 350
vzlog_pr 378
join_unit 455
join_bid 476
join_idealinit 476
ZM_ZMV_mul 518
rnfelttrace 784
nfchecksigns 861
rnfalgtobasis 1204
RgM_RgX_mul 1337
nfsign 1456
nfpolsturm 1498
matbasistoalg 1582
pl_normalize 1764
vecsmall01_to_indices 1764
multable 1813
tablemulvec 1813
num_positive 1999
ei_multable 2422
ideallist 2842
isprfact 2982
pr_init 2982
chineseinit_i 3115
Ideallist 3192
matalgtobasis 3899
ZC_sub1 3948
nfeltsign 4732
indices_to_vec01 5145
idealchinese 5656
principal_units_relations 5768
RgX_to_nfX 5902
zlog_pr_init 6132
parse_embed 6286
chk_ind 6797
is_chineseinit 7070
ZC_add1 7098
mulbytab 7784
nfM_mul 8050
nfM_inv 8260
_nf_s 8274
pr_basis_perm 8344
RgM_to_nfM 8582
log_gen_arch 9989
tablemul_ei 10213
zkchineseinit 13181
zkVchinese1 13440
idealprincipalunits_i 14154
principal_units 14154
setsigns_init 14633
zkadd1 14812
zkchinese1 14812
zkmul 14812
zksub1 14812
tablemul_ei_ej 16989
powp 20104
zidealij 20839
nfdiv 21980
nftrace 23583
sprk_get_gen 25662
split_U 26075
Idealstar 26565
famat_strip2 26817
Idealstar_i 26838
bid_grp 27132
nfarchstar 28381
nfnorm 31381
sprkinit 31794
tablesqr 40040
_nf_inv 41566
zk_inv 41889
rnfbasistoalg 44212
nfpow_u 45941
_mul 47228
join_ideal 47698
sarch_get_cyc 49357
log_gen_pr 50757
nfC_multable_mul 51093
get_C 55030
sarch_get_F 55030
sarch_get_MI 55030
sarch_get_lambda 55030
nfchecksigns_i 63595
nfinv 64155
nfvalrem 64925
RgC_to_nfC 78617
concat_join 86065
nfsetsigns 94174
vecmoduu 95004
coltoalg 105252
famat_zlog_pr 110275
sprk_get_expo 110275
famat_zlog 113215
set_sign_mod_divisor 114873
nfpow 117845
sprk_get_pr 129224
zkC_multable_mul 129750
polmod_nffix 134449
polmod_nffix2 134540
_sqr 142258
basistoalg 148687
nfM_nfC_mul 161259
nfC_nf_mul 167909
get_nf_field 177583
check_nfelt 181985
sprk_get_U2 185820
famat_to_nf_modideal_coprime 194807
sprk_get_L2 196677
nf_to_scalar_or_alg 217023
log_prk1 224950
zlog 246049
ZC_prdvd 260666
algtobasis 267627
sarch_get_archp 272299
nfsqrmodideal 277327
ideallog 286453
sprk_get_prk 296095
ideallog_sgn 301202
ZMV_ZCV_mul 312850
eval_sign 313454
ideallog_i 314369
sprk_get_cyc 346642
nfsign_arch 349293
init_zlog 353156
apply_U 354772
zkmultable_capZ 359465
vec01_to_indices 363503
eval_sign_embed 386401
nf_log 386883
sprk_get_ff 386883
sprk_is_prime 386883
zlog_pr 387919
zk_embed 397048
zkmultable_inv 401354
nfmulpowmodideal 422708
nfpowmodideal 475901
_nf_neg 570948
zk_modHNF 604002
nfsqri 680136
nfmulmodideal 735412
nfsub 1193969
vecmodii 1206803
nfval 1303687
pol_to_scalar_or_basis 1462853
nfmuli 1614006
poltobasis 2315577
_nf_red 2397969
ZM_ZX_mul 2481406
zk_scalar_or_multable 3488435
nfsqr 4715623
zk_multable 4865306
ZC_nfval 5140538
ZC_nfvalrem 5377240
zk_ei_mul 9267366
_nf_add 9326373
_nf_mul 11290489
get_tab 11591118
nfadd 15589533
nfmul 20605619
nf_to_scalar_or_basis 83521558
_mulii 396567186

Generated by: LCOV version 1.13