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 16962-5a32637) Lines: 1686 1733 97.3 %
Date: 2014-10-29 Functions: 126 128 98.4 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 1051 1206 87.1 %

Function Name Sort by function name Hit count Sort by hit count
Pi2n 3754225
PiI2 4207
PiI2n 6489
Qp_exp 10325
Qp_exp_prec 9961
Qp_exp_safe 10787
Qp_log 1064
Qp_sqrt 1351
Qp_sqrtn 1183
Qp_sqrtn_ram 854
Qp_sqrtn_unram 616
T2 93721
Up_sqrt 2289
Zn_sqrt 350
Zp_teichmuller 7
_mul 1511200
_muli 2588113
_mulr 590809
_one 280
_oner 16024
_rpowuu_msqr 97153
_rpowuu_sqr 307579
_sqr 3959612
_sqri 3901723
_sqrr 26400457
abpq_init 5081
abpq_sum 182415
agm 1682
agm1 1794
agm1cx 16754
agm1r_abs 187122
agmcx_a_b 16768
agmcx_gap 282437
agmcx_init 16768
agmr_gap 2554318
atanhQ_split 3480
catalan 7
constcatalan 7
consteuler 7042
constlog2 6304979
constpi 5549426
cos_p 49
cxexp 700075
cxexpm1 63
exp1r_abs 4741114
expIr 96187
expm1_Ir 56
gcos 168172
gcotan 98
gexp 2258326
gexpm1 112
glog 1633404
gpow 8201918
gpowers 280
gpowg0 127652
gpowgs 40237885
gsin 741653
gsincos 703652
gsqrt 3055882
gsqrtn 2025
gtan 77
log2_split 1740
logagmcx 15606
logagmr_abs 283502
logr_abs 1786012
modlog2 4655756
mpaut 2715570
mpcatalan 7
mpcos 2758364
mpcosm1 4284181
mpcotan 21
mpeuler 7042
mpexp 4686818
mpexp0 31069
mpexp_basecase 4655749
mpexpm1 161
mplog 233126
mplog2 6304979
mppi 5549419
mpsin 741338
mpsincos 808890
mpsincosm1 56
mptan 21
mulii3 312009
mulii4 93721
palogaux 1057
pari_close_floats 1189
pari_init_floats 1201
pi_ramanujan 1594
pow_monome 96089
pow_polmod 8569
powersr 16024
powgi 9686002
powis 11604029
powiu 15126691
powiu_sign 15587958
powp 161
powps 1358
powr0 1652
powrfrac 539
powrs 25583449
powrshalf 0
powru 130253
powruhalf 7525
powuu 3957923
rootsof1complex 7
rootsof1padic 0
rpowuu 107050
scalarpol_get_1 106057
ser_pow 42
ser_pow_1 42
ser_powfrac 63
serchop0 2128
serexp 19362
sin_p 49
sqrt_2adic 581
sqrt_ser 942
sqrtnint 1680
swap_clone 3586
teich 7
tofp_safe 2569
trans_eval 570007
transvec 29451
upowuu 7723119
usqrtn 429
usqru 1631719
val_from_i 56
zellagmcx 14

Generated by: LCOV version 1.9