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 - FF.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 16962-5a32637) Lines: 813 896 90.7 %
Date: 2014-10-29 Functions: 98 104 94.2 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 325 415 78.3 %

Function Name Sort by function name Hit count Sort by hit count
_getFF 5691431
_initFF 5407406
_mkFF 5343639
FF_samefield 2369747
_checkFF 2280028
FF_sqr 2198565
Rg_is_FF 2114393
RgC_is_FFC 2113574
RgM_is_FFM 2113357
FF_mul 1493895
_mkFF_i 900393
mkFF_i 836514
FF_add 546351
FF_to_Flxq 533533
FF_Z_mul 447364
FF_equal0 428724
FF_p_i 253679
FF_Z_add 233453
to_FFE 190127
FF_sub 183523
FF_to_FpXQ_i 166964
FF_mod 164262
FF_ellrandom 93583
FF_mul2n 92780
FF_ellmul 77259
FF_to_F2xq 73003
FF_neg_i 63035
FF_div 56133
FF_ellinit 46921
Flxq_ell_to_a4a6 42313
FF_1 37331
FF_ellcard 28700
FF_neg 25560
FF_ellgroup 18039
FF_ellgens 16744
to_FFE_vec 16744
F3xq_ell_to_a4a6 12803
FF_equal1 12376
ffrandom 12061
FF_to_FpXQ 9436
FF_equal 8302
FF_Z_Z_muldiv 6594
FF_inv 4438
F2xq_ell_to_a4a6 3857
Fq_to_FpXQ 3572
FF_zero 3248
p_to_FF 2471
FqV_to_FpXQV 1729
FF_ellorder 1722
FF_Q_add 1442
ffgen 1211
FpXQ_ell_to_a4a6 870
to_FF 844
FFC_to_raw 525
to_FFX 322
Z_FF_div 308
FF_primroot 252
ffprimroot 252
raw_to_FFC 210
FF_ispower 210
FF_issquareall 189
FFX_init_fix_varn 182
FFM_to_raw 168
fflog 126
FF_log 126
FF_f 126
FF_elldata 119
to_FFC 112
FFX_roots 112
FF_sqrtn 98
FF_elllog 84
raw_to_FFM 84
FF_sqrt 70
FFX_factor 70
to_FF_fact 70
FFM_wrap 63
FF_p 56
FF_pow 47
FqC_to_FpXQC 42
FF_norm 28
FF_conjvec 28
FF_order 28
FF_charpoly 28
fforder 28
FF_minpoly 28
FF_trace 28
FFM_rank 21
FFM_ker 21
FFM_mul 21
FFM_inv 21
FFM_det 21
FFM_FFC_mul 21
FFM_image 21
FqM_to_FpXQM 21
FF_q 14
FF_elltatepairing 7
FF_issquare 7
FF_ellweilpairing 7
Fp_cmp_1 0
FF_equalm1 0
F3x_equalm1 0
FF_to_Flxq_i 0
Tp_to_FF 0
FF_to_F2xq_i 0

Generated by: LCOV version 1.9