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-bordeaux1.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 - trans1.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 17400-bace02f) Lines: 1699 1746 97.3 %
Date: 2015-01-26 Functions: 127 129 98.4 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1061 1216 87.3 %

Function Name Sort by function name Hit count Sort by hit count
Pi2n 3817923
PiI2 4354
PiI2n 6928
Qp_exp 10339
Qp_exp_prec 9975
Qp_exp_safe 10801
Qp_log 1064
Qp_sqrt 1358
Qp_sqrtn 1183
Qp_sqrtn_ram 854
Qp_sqrtn_unram 616
T2 130761
Up_sqrt 2296
Zn_sqrt 350
Zp_teichmuller 7
_mul 1473257
_muli 2603346
_mulr 564292
_one 280
_oner 15576
_rpowuu_msqr 99253
_rpowuu_sqr 312388
_sqr 3878701
_sqri 3948510
_sqrr 26370651
abpq_init 4904
abpq_sum 256684
agm 1703
agm1 1815
agm1cx 18807
agm1r_abs 207253
agmcx_a_b 18821
agmcx_gap 322325
agmcx_init 18821
agmr_gap 2889297
atanhQ_split 3198
catalan 7
cbrtr_abs 11313
constcatalan 7
consteuler 7056
constlog2 6345409
constpi 5623150
cos_p 49
cxexp 712770
cxexpm1 63
exp1r_abs 4754603
expIr 104967
expm1_Ir 56
gcos 168172
gcotan 105
gexp 2288605
gexpm1 112
glog 1672380
gpow 8221027
gpowers 280
gpowg0 127435
gpowgs 40297313
gsin 741660
gsincos 716368
gsqrt 3479128
gsqrtn 2527
gtan 77
log2_split 1599
logagmcx 17659
logagmr_abs 303076
logr_abs 1811002
modlog2 4669917
mpaut 2736944
mpcatalan 7
mpcos 2758364
mpcosm1 4305562
mpcotan 21
mpeuler 7056
mpexp 4700323
mpexp0 31085
mpexp_basecase 4669238
mpexpm1 161
mplog 231204
mplog2 6345409
mppi 5622471
mpsin 741345
mpsincos 830372
mpsincosm1 56
mptan 21
mulii3 441710
mulii4 130761
palogaux 1057
pari_close_floats 1231
pari_init_floats 1243
pi_ramanujan 1699
pow_monome 104552
pow_polmod 10557
powersr 15576
powgi 9663462
powis 11667149
powiu 15314273
powiu_sign 15781819
powp 161
powps 1358
powr0 1743
powrfrac 539
powrs 25582545
powrshalf 0
powru 149491
powruhalf 12495
powuu 4029834
rootsof1complex 7
rootsof1padic 0
rpowuu 108023
scalarpol_get_1 106057
ser_pow 168
ser_pow_1 168
ser_powfrac 189
serchop0 2170
serexp 19397
sin_p 49
sqrt_2adic 581
sqrt_ser 987
sqrtnint 25734
swap_clone 3550
teich 7
tofp_safe 2569
trans_eval 577528
transvec 32388
upowuu 7851347
usqrtn 429
usqru 1666315
val_from_i 182
zellagmcx 14

Generated by: LCOV version 1.9