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 - modules - mpqs.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.11.0 lcov report (development 22851-e834f1b2f) Lines: 915 1133 80.8 %
Date: 2018-07-16 05:36:59 Functions: 38 38 100.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
mpqs 279
mpqs_FB_ctor 279
mpqs_create_FB 279
mpqs_find_k 279
mpqs_handle_ctor 279
mpqs_handle_dtor 279
mpqs_i 279
mpqs_locate_A_range 279
mpqs_poly_ctor 279
mpqs_set_parameters 279
mpqs_set_sieve_threshold 279
mpqs_sieve_array_ctor 279
mpqs_solve_linear_system 279
stream_read_F2m 279
mpqs_combine_large_primes 287
decimal_len 558
split 586
mpqs_get_filename 1674
mpqs_increment 1887
mpqs_si_choose_primes 2166
mpqs_append_file 4392
mpqs_mergesort_lp_file 4426
mpqs_mergesort_lp_file0 4426
mpqs_sort_lp_file 4426
set_lp_entry 19789
mpqs_set_exponents 20112
mpqs_eval_cand 46272
mpqs_eval_sieve 47556
mpqs_self_init 47556
mpqs_sieve 47556
mpqs_add_relation 103635
mpqs_get_relation 103635
mpqs_add_0 191799
pari_fputs 1300388
mpqs_relations_cmp 1357034
mpqs_add_factor 3018166
paristrtok_r 7083566
mpqs_sieve_p 208165731

Generated by: LCOV version 1.13