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 - basemath - trans1.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20068-a012b06) Lines: 1840 1889 97.4 %
Date: 2017-01-16 05:49:55 Functions: 136 138 98.6 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Pi2n 4430437
PiI2 4354
PiI2n 6166
Qp_exp 20860
Qp_exp_prec 19922
Qp_exp_safe 21322
Qp_log 23352
Qp_sqrt 1736
Qp_sqrtn 1183
Qp_sqrtn_ram 854
Qp_sqrtn_unram 616
T2 271103
Z2_sqrt 1477
Zn_sqrt 350
Zp_teichmuller 1316
_mul 14122983
_muli 3166325
_mulr 888377
_one 46294
_oner 24011
_rpowuu_msqr 205029
_rpowuu_sqr 511052
_sqr 34978524
_sqri 4764321
_sqrr 6423685
abpq_init 7437
abpq_sum 534843
agm 2466
agm1 2578
agm1cx 11225
agm1r_abs 299426
agmcx_a_b 11239
agmcx_gap 193560
agmcx_init 11239
agmr_gap 4202032
atanhQ_split 4900
bug_logp 7
catalan 14
cbrtr_abs 12068
constcatalan 14
consteuler 19778
constlog2 9571863
constpi 10617685
cos_p 49
cxexp 1179026
cxexpm1 4980
exp1r_abs 6913417
expIr 131870
expm1_Ir 4889
gcos 215231
gcotan 126
gexp 5438026
gexpm1 10377
glog 2818508
gpow 12874311
gpow0 126
gpowers 46301
gpowers0 21444
gpowg0 2922532
gpowgs 44619328
grootsof1 59488
grootsof1_4 53614
gsin 285268
gsinc 107485
gsincos 1183548
gsqrpowers 19085
gsqrt 6894844
gsqrtn 2765
gtan 77
log2_split 2450
logagmcx 10077
logagmr_abs 330829
logr_abs 2958549
modlog2 6853251
mpaut 2923494
mpcatalan 14
mpcos 2805465
mpcosm1 4492178
mpcotan 21
mpeuler 19778
mpexp 7084885
mpexp0 232577
mpexp_basecase 6852308
mpexpm1 8921
mplog 203750
mplog2 9571863
mppi 10616742
mpsin 281537
mpsinc 107429
mpsincos 1426179
mpsincosm1 4889
mptan 21
mulii3 915658
mulii4 271103
palogaux 23345
pari_close_floats 64378
pari_init_floats 64055
pi_ramanujan 2523
pow_monome 366896
pow_polmod 40039
powersr 24011
powgi 33031905
powis 15172076
powiu 27657275
powiu_sign 27861657
powp 161
powps 40971
powr0 1701
powrfrac 504
powrs 5225733
powrshalf 0
powru 175792
powruhalf 18726
powuu 11234908
rpowuu 135162
scalarpol_get_1 115731
ser_agm1 14
ser_cmp_expo 56
ser_pow 196
ser_pow_1 196
ser_powfrac 217
serchop0 16576
serexp 30114
sin_p 63
sqrt_ser 1190
sqrtnint 27420
swap_clone 5341
teich 0
teichmuller 238
teichmullerinit 1197
tofp_safe 12327
trans_eval 645991
transvec 41725
upowuu 18481311
usqrtn 429
usqru 2716915
val_from_i 210
zellagmcx 14

Generated by: LCOV version 1.11