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 - base5.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.16.1 lcov report (development 28676-df828f1c94) Lines: 1098 1164 94.3 %
Date: 2023-08-26 07:54:43 Functions: 76 79 96.2 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
RED 364
RgV_find_denom 14
check_0 84
colcomb 110578
colcomb1 132671
do_SWAP 98
element_close 38333
element_mulvecrow 315
eltabstorel 25837
eltabstorel_lift 28600
eltdown 0
eltreltoabs 87133
fail 49
findmin 364
idV_simplify 10155
initmat 28
mattocomplex 14
mknfabs 1561
mkupdown 1561
modulereltoabs 2247
nf_all_roots 14
nf_nfzk 2023
nf_rnfeq 2037
nf_rnfeqsimple 378
nfbezout 69595
nfcleanmod 26801
nfdetint 329
nfeltup 245
nfhnf 7083
nfhnf0 7097
nfhnfmod 3107
nfreduce 7
nfsnf 0
nfsnf0 49
nftau 196
nftocomplex 1022
prodidnorm 105
rel_T2 14
rnfV_to_nfM 483
rnf_build_nfabs 103893
rnf_zkabs 1785
rnfcomplete 32724
rnfdisc_get_T 3647
rnfdisc_get_T_i 3647
rnfeltabstorel 54838
rnfeltdown 2471
rnfeltdown0 2716
rnfeltreltoabs 134484
rnfeltup 13450
rnfeltup0 27873
rnfequation 34111
rnfequation0 46991
rnfequation2 9632
rnfequationall 47369
rnfideal0 154
rnfidealabstorel 455
rnfidealdown 217
rnfidealfactor 35
rnfidealhnf 1330
rnfidealmul 56
rnfidealnormabs 203
rnfidealnormrel 196
rnfidealprimedec 17384
rnfidealprimedec_1 17384
rnfidealreltoabs 0
rnfidealreltoabs0 238
rnfidealreltoabs_i 497
rnfidealtwoelement 259
rnfidealup 224
rnfidealup0 245
rnfinit 721
rnfinit0 1974
rnflllgram 14
rnfpolred 7
rnfprincipaltohnf 770
rnfpseudobasis 126
rnfscal 357
rowcomb 196
zero_nfbezout 64384

Generated by: LCOV version 1.14