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 - kernel/gmp - mp.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20459-9710128) Lines: 635 716 88.7 %
Date: 2017-04-28 05:33:48 Functions: 53 54 98.1 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
GEN2mpz 166754442
addiispec 1085609882
adduispec 888161062
adduispec_offset 239306441
addumului 468552
affir 77848332
cmpiispec 1300085458
convi 408943
diviiexact 174884000
divis 202399
divis_rem 19041713
diviu_rem 69122971
diviuexact 188595304
diviuuexact 408591
divri 12810661
divri_with_gmp 1798165
divrr 62246233
divrr_with_gmp 21524971
dvmdii 580484919
equaliispec 41333645
floorr 331358
icopy_ef 10264982
incloop 23211845
incneg 4641
incpos 23199264
int_normalize 112444453
mantissa2nr 16665490
mpz2GEN 161880752
muliispec 1438596120
muliispec_mirror 476511
muluispec 1553766735
muluui 425247
pari_gmp_free 4836
pari_gmp_realloc 0
pari_kernel_close 618
pari_kernel_init 618
red_montgomery 6980792
remi2n 7744300
resetloop 127999
roundr_up_ip 196902276
setloop 1834381
shiftispec 245294760
sqrispec 513178661
sqrispec_mirror 36300
sqrtr_abs 16864303
sqrtremi 2275638
subiispec 1033035027
subiuspec 639877538
truncr 1094254
umodiu 632250754
xmpn_copy 739861
xmpn_mirror 87564234
xmpn_mirrorcopy 100804124
xmpn_zero 40187439

Generated by: LCOV version 1.11