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 - FF.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20422-b487f4d) Lines: 939 989 94.9 %
Date: 2017-03-22 05:51:54 Functions: 113 117 96.6 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
F3x_equalm1 0
FF_to_F2xq_i 0
FF_to_Flxq_i 0
Fp_cmp_1 0
FF_issquare 7
FF_ellcard_SEA 14
FFM_indexrank 21
FFM_suppl 21
FF_charpoly 28
FF_conjvec 28
FF_minpoly 28
FF_norm 28
FF_order 28
FF_trace 28
fforder 28
FFM_det 35
FFM_image 35
FFM_gauss 42
FFM_invimage 42
FFM_rank 42
FF_equalm1 42
FFM_FFC_gauss 56
FFM_ker 56
FF_p 56
FFM_FFC_invimage 63
FFM_deplin 63
FF_sqrt 70
FqX_to_FFX 70
FqM_to_FpXQM 75
FFM_FFC_mul 77
FF_pow 79
FF_elllog 91
FF_elltatepairing 91
FFX_factor 98
raw_to_FFX_fact 98
FF_sqrtn 105
FF_elldata 119
FFM_inv 126
FF_issquareall 175
FF_log 175
fflog 175
FFM_FFC_wrap 196
FFM_mul 196
FF_f 196
FFM_wrap 238
FFM_FFM_wrap 280
FF_ispower 280
FqC_to_FpXQC 281
Z_FF_div 336
FF_primroot 385
ffprimroot 385
raw_to_FFX 385
Tp_to_FF 399
raw_to_FFM 462
Fq_to_FF 812
rawFq_to_FF 882
FFM_to_raw 1120
FF_Q_add 1442
FpXQ_ell_to_a4a6 1710
FqV_to_FpXQV 1743
FF_ellorder 1750
ffgen 1972
p_to_FF 2919
FF_zero 3360
FF_ellweilpairing 4984
FF_Z_Z_muldiv 5397
FF_inv 6746
FFC_to_raw 9086
FF_equal1 10059
FF_ellgens 16772
to_FFE_vec 16772
FF_ellgroup 18081
FF_to_FpXQ 22211
F3xq_ell_to_a4a6 23590
FF_1 25683
FF_elltwist 27188
FF_neg 27710
FF_equal 35242
F2xq_ell_to_a4a6 45379
FF_q 54474
Flxq_ell_to_a4a6 65651
FF_neg_i 83618
FF_ellcard 94316
FFX_roots 103439
FFX_to_raw 103537
raw_to_FFC 106904
FF_ellinit 112621
FF_div 118405
ffrandom 138474
FF_mod 164479
FF_to_FpXQ_i 168294
FF_mul2n 232391
FF_ellrandom 244034
FF_ellmul 247450
Z_to_raw 301658
FF_sub 498557
to_FFE 510762
Rg_to_raw 763609
FF_to_Flxq 786758
FF_to_F2xq 961597
FF_p_i 1116383
FF_Z_add 1575228
FF_Z_mul 2211444
mkFF_i 2225368
_mkFF_i 2309800
FF_sqr 2785912
FF_equal0 8916882
RgM_is_FFM 9510293
RgC_is_FFC 9517881
Rg_is_FF 9636846
FF_add 10376775
FF_mul 10676879
_checkFF 21670791
FF_samefield 22823849
_mkFF 28690522
_initFF 28774883
_getFF 29998534

Generated by: LCOV version 1.11