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 - ellisog.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 21925-0da0e71) Lines: 946 973 97.2 %
Date: 2018-02-21 06:16:18 Functions: 76 76 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
contrib_full_tors 14
ellQ_goodl_l 14
ellnf_goodl_l 21
ellnf_isomat 21
ellnf_modpoly 21
ellnf_prime_degree 21
ellweilcurve 21
non_two_torsion_ordinate_char2 49
ellisogenyapply 70
derivhasse 98
isomatdbl 98
mkisomatdbl 98
isomat_perm 133
ellisograph_dummy 154
ellnf_isocrv 154
ellQ_goodl 196
invisogeny_a4a6 245
isogeny_a4a6 245
isog_identity 252
mkisomat 266
ellisograph_p 308
corr 336
elkies98 336
ellisog_by_j 336
ellQ_exceptional_iso 350
ellQ_isomat 350
ellisomat 385
list_to_crv 385
ellnf_get_degree 420
isogeny_from_kernel_point 427
divy 448
ellisog_by_jt 490
twistisogeny 518
update_isogeny_polys 532
ellisograph_r 581
ellnf_charpoly 602
startor 602
ellisograph_a4a6 616
ellisograph_iso 623
non_two_torsion_abscissa 784
mkisomatraw 826
ellisweierstrasspoint 903
ellisogeny 1092
isograph_p 1134
ellcompisog 1155
non_two_torsion_ordinate_char_not2 1169
distmat_pow 1190
etree_distmat 1190
etree_list 1190
RgX_homogenize 1204
starlaw 1204
isog_abscissa 1218
isog_ordinate 1218
contrib_weierstrass_pt 1274
isomat_find 1330
ellnfcompisog 1400
nfispower 1526
get_isog_vars 1624
ellisog_by_roots 1638
RgXY_eval 1680
RgXQX_homogenous_evalpow 1792
ellisog_by_Kohel 1806
trivial_isogeny 2380
ellisograph_Kohel_r 2408
a4a6_divpol 2485
ellisograph_Kohel_iso 2485
isogeny_from_kernel_poly 2947
two_torsion_part 2947
first_three_power_sums 2954
etree_distmatr 3101
etree_listr 3101
make_velu_curve 3318
to_RgX 4032
RgX_homogenous_evalpow 4592
etree_nbnodes 7000
isomat_eq 7791

Generated by: LCOV version 1.11