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.1 lcov report (development 24020-576484e07) Lines: 1620 1727 93.8 %
Date: 2019-07-17 05:55:58 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 182
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
pl_normalize 1771
vecsmall01_to_indices 1771
matbasistoalg 1883
multable 1995
tablemulvec 1995
num_positive 2195
nfsign 2198
ei_multable 2646
isprfact 2989
pr_init 2989
chineseinit_i 3122
matalgtobasis 3920
nfeltsign 4788
idealchinese 5663
ideallist 5684
Ideallist 6034
parse_embed 6342
ZC_sub1 6384
indices_to_vec01 6510
RgX_to_nfX 6651
chk_ind 6874
is_chineseinit 7091
log_prk_init 7714
principal_units_relations 8085
nfM_mul 8218
nfM_inv 8470
_nf_s 8484
mulbytab 9086
RgM_to_nfM 9352
tablemul_ei 10731
ZC_add1 12894
pr_basis_perm 14525
log_gen_arch 14889
tablemul_ei_ej 17857
powp 20111
idealprincipalunits_i 20790
principal_units 20790
setsigns_init 23326
nftrace 23583
zkchineseinit 24857
zkVchinese1 25116
zkadd1 27251
zkchinese1 27251
zkmul 27251
zksub1 27251
vecmoduu 27272
zidealij 30072
nfdiv 34670
nfnorm 38806
tablesqr 42084
_nf_inv 43190
split_U 44177
rnfbasistoalg 44212
sprk_get_gen 44562
Idealstar 44674
famat_strip2 44926
Idealstar_i 44947
bid_grp 45241
nfarchstar 46545
sprkinit 52276
zk_inv 53846
_mul 55266
nfC_multable_mul 56313
nfpow_u 56875
nfvalrem 64932
get_C 66959
sarch_get_F 66959
sarch_get_MI 66959
sarch_get_lambda 66959
nfchecksigns_i 67802
join_ideal 69174
nfinv 69958
sarch_get_cyc 83034
RgC_to_nfC 86701
log_gen_pr 93541
coltoalg 105665
famat_zlog 119431
nfsetsigns 119684
famat_zlog_pr 119809
sprk_get_expo 119809
concat_join 128716
polmod_nffix 134449
polmod_nffix2 134540
nfpow 135996
zkC_multable_mul 139333
set_sign_mod_divisor 151807
sprk_get_pr 152933
basistoalg 155001
_sqr 163835
nfM_nfC_mul 170219
nfC_nf_mul 184098
get_nf_field 186921
check_nfelt 200087
sprk_get_U2 224145
sprk_get_L2 242996
nf_to_scalar_or_alg 243847
famat_to_nf_modideal_coprime 252501
log_prk1 269603
zlog 285515
ideallog 306753
algtobasis 312085
nfsqrmodideal 312350
eval_sign 331375
ideallog_sgn 337063
sarch_get_archp 338950
sprk_get_prk 343954
ZMV_ZCV_mul 357979
ideallog_i 359638
nfsign_arch 366793
ZC_prdvd 368074
zkmultable_capZ 379501
vec01_to_indices 390082
eval_sign_embed 408944
zk_embed 420954
apply_U 426088
sprk_get_cyc 432294
zkmultable_inv 433347
init_zlog 434902
nf_log 473732
sprk_get_ff 473732
sprk_is_prime 473732
log_prk 476924
nfmulpowmodideal 501377
nfpowmodideal 567534
_nf_neg 623672
zk_modHNF 691215
nfsqri 813020
nfmulmodideal 873698
nfsub 1249394
nfval 1306494
pol_to_scalar_or_basis 1583731
vecmodii 1651289
nfmuli 1856216
_nf_red 2569763
poltobasis 2684273
ZM_ZX_mul 2866649
zk_scalar_or_multable 3734336
nfsqr 5043973
zk_multable 5316142
ZC_nfval 5383996
ZC_nfvalrem 5639191
_nf_add 10366279
zk_ei_mul 10641609
_nf_mul 12472257
get_tab 13342059
nfadd 16710820
nfmul 21997899
nf_to_scalar_or_basis 89143711
_mulii 465329518

Generated by: LCOV version 1.13