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 - perm.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.8.0 lcov report (development 18590-b5f7c1c) Lines: 541 573 94.4 %
Date: 2016-02-09 Functions: 62 64 96.9 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 295 337 87.5 %

Function Name Sort by function name Hit count Sort by hit count
abelian_group 91
cyc_pow 1281
cyc_pow_perm 7196
cyclicgroup 3913
dicyclicgroup 77
group_abelianHNF 329
group_abelianSNF 280
group_domain 4872
group_elts 56518
group_export 28
group_export_GAP 14
group_export_MAGMA 14
group_isA4S4 3598
group_isabelian 511
group_leftcoset 127477
group_order 287455
group_perm_normalize 57365
group_quotient 3780
group_rightcoset 57365
group_set 50106
group_subgroup_isnormal 56
group_subgroups 4354
groupelts_abelian_group 0
groupelts_center 693
groupelts_set 10626
grp_get_gen 387212
grp_get_ord 665371
liftlistsubgroups 42497
liftsubgroup 26166
perm_commute 536683
perm_cycles 10332
perm_generate 6853
perm_mul_inplace2 7
perm_order 55230
perm_pow 7196
perm_relorder 111202
perm_to_GAP 21
quo_get_coset 9982
quo_get_gen 66087
quotient_group 3773
quotient_perm 9982
quotient_subgroup_lift 26166
sgcmp 1267
subgroups_tableset 14
tableset_find_index 63
trivialgroup 26922
trivialsubgroups 26922
vec_insert 65142
vec_is1to1 2198
vec_isconst 2688
vecperm_orbits 546
vecperm_orbits_i 66108
vecsmall_duplicate 33240
vecsmall_duplicate_sorted 0
vecsmall_indexsort 635600
vecsmall_indexsortspec 12854288
vecsmall_sort 708137
vecsmall_sortspec 955064
vecsmall_uniq 1078
vecsmall_uniq_sorted 1078
vecvecsmall_indexsort 21
vecvecsmall_search 12792178
vecvecsmall_sort 114828
vecvecsmall_sort_uniq 294

Generated by: LCOV version 1.9