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 to exceed 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.12.0 lcov report (development 23353-42c433a02) Lines: 1616 1724 93.7 %
Date: 2018-12-15 05:41:59 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
famat_norm 7
Q_mod_bid 14
ideallistarch 14
nfM_det 14
join_archunit 28
pr_equal 28
join_arch 56
join_bid_arch 56
nfeltembed 63
idealstar0 70
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
veclog_prk 378
join_unit 455
join_bid 476
join_idealinit 476
ZM_ZMV_mul 518
rnfelttrace 784
nfchecksigns 861
rnfalgtobasis 1204
RgM_RgX_mul 1337
nfpolsturm 1498
nfsign 1645
matbasistoalg 1673
pl_normalize 1771
vecsmall01_to_indices 1771
multable 1820
tablemulvec 1820
num_positive 1999
ei_multable 2492
isprfact 2989
pr_init 2989
chineseinit_i 3122
matalgtobasis 3920
nfeltsign 4732
indices_to_vec01 5432
idealchinese 5663
ideallist 5684
RgX_to_nfX 6000
Ideallist 6034
parse_embed 6286
ZC_sub1 6321
log_prk_init 6587
chk_ind 6797
is_chineseinit 7091
principal_units_relations 7693
mulbytab 7798
nfM_mul 8050
nfM_inv 8260
_nf_s 8274
RgM_to_nfM 8617
tablemul_ei 10213
ZC_add1 12670
log_gen_arch 14392
pr_basis_perm 14497
tablemul_ei_ej 16989
idealprincipalunits_i 19656
principal_units 19656
powp 20104
setsigns_init 23075
nftrace 23583
zkchineseinit 24346
zkVchinese1 24605
zkadd1 26754
zkchinese1 26754
zkmul 26754
zksub1 26754
nfdiv 27118
vecmoduu 27202
zidealij 28511
nfnorm 37688
tablesqr 40040
_nf_inv 41566
split_U 43372
sprk_get_gen 43799
Idealstar 43869
famat_strip2 44121
Idealstar_i 44142
rnfbasistoalg 44212
bid_grp 44436
nfarchstar 45692
zk_inv 48313
sprkinit 50386
nfC_multable_mul 51100
_mul 51673
nfpow_u 56119
nfvalrem 64925
get_C 65936
sarch_get_F 65936
sarch_get_MI 65936
sarch_get_lambda 65936
nfinv 66451
nfchecksigns_i 67760
join_ideal 69174
RgC_to_nfC 78624
sarch_get_cyc 81809
log_gen_pr 92351
coltoalg 105287
famat_zlog_pr 117443
sprk_get_expo 117443
nfsetsigns 118569
famat_zlog 119214
nfpow 127587
concat_join 128716
polmod_nffix 134449
polmod_nffix2 134540
zkC_multable_mul 136946
basistoalg 149534
set_sign_mod_divisor 150510
sprk_get_pr 150553
_sqr 155626
nfM_nfC_mul 161259
nfC_nf_mul 167965
get_nf_field 177583
check_nfelt 196559
sprk_get_U2 231656
nf_to_scalar_or_alg 232094
famat_to_nf_modideal_coprime 245711
sprk_get_L2 250521
log_prk1 275644
ZC_prdvd 283094
nfsqrmodideal 286633
zlog 308769
eval_sign 326012
ideallog 330742
algtobasis 332944
sarch_get_archp 336496
sprk_get_prk 349099
ideallog_sgn 360632
zkmultable_capZ 370385
nfsign_arch 379883
ZMV_ZCV_mul 381037
ideallog_i 382591
vec01_to_indices 402661
eval_sign_embed 403670
zk_embed 415374
zkmultable_inv 418698
apply_U 433711
sprk_get_cyc 435913
init_zlog 457414
nfmulpowmodideal 484014
nf_log 495292
sprk_get_ff 495292
sprk_is_prime 495292
log_prk 496608
nfpowmodideal 547567
_nf_neg 570948
zk_modHNF 642194
nfsqri 711553
nfmulmodideal 827942
nfsub 1194179
nfval 1303721
pol_to_scalar_or_basis 1466969
nfmuli 1652935
vecmodii 1702025
_nf_red 2397969
poltobasis 2462405
ZM_ZX_mul 2634031
zk_scalar_or_multable 3603641
nfsqr 4721839
zk_multable 5051512
ZC_nfval 5183618
ZC_nfvalrem 5430309
_nf_add 9326373
zk_ei_mul 9502216
_nf_mul 11290489
get_tab 11896387
nfadd 15595623
nfmul 20610223
nf_to_scalar_or_basis 83983846
_mulii 399062844

Generated by: LCOV version 1.13