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 - galconj.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.10.0 lcov report (development 20777-d2a9243) Lines: 1557 1635 95.2 %
Date: 2017-06-25 05:59:24 Functions: 98 100 98.0 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Vmatrix 1540
a4galoisgen 35
automorphismlift 2387
aux 588
checkgal 22176
checkgaloischar 1386
checkgroup 3514
checkgroupelts 3521
chk_perm 1491
conjclasses_count 301
conjclasses_expand 301
conjcyclo 63
embed_disc 19453
embed_roots 1602
fixedfieldfactmod 1316
fixedfieldfactor 63
fixedfieldinclusion 784
fixedfieldorbits 2338
fixedfieldsurmer 2415
fixedfieldsympol 2338
freetest 1344
frobeniusliftall 875
galois_group 3451
galois_test_perm 92848
galoisanalysis 3570
galoisborne 2247
galoischar_aut_charpoly 11991
galoischar_charpoly 1386
galoischar_dim 1414
galoischardet 28
galoischarpoly 1358
galoischartable 504
galoisconj 11151
galoisconj0 42
galoisconj1 637
galoisconj4 0
galoisconj4_main 3458
galoisconjclasses 301
galoiscosets 63
galoisdolift 2191
galoisexport 28
galoisfindfrobenius 2100
galoisfindgroups 469
galoisfixedfield 1022
galoisfrobeniuslift 2163
galoisfrobeniustest 2261
galoisgen 2163
galoisgenfixedfield 1316
galoisgenliftauto 1645
galoisgrouptopol 441
galoisidentify 392
galoisinit 2324
galoisisabelian 168
galoisisnormal 56
galoismakepsi 714
galoispermtopol 14602
galoispermtopol_i 15085
galoissubfields 49
galoissubgroups 63
get_image 1645
groupelts_char_det 28
groupelts_chartable 504
improves 16249
init_group 3570
initgaloisborne 4174
initlift 2191
inittest 1344
inittestlift 770
intheadlong 1013698
is2sparse 119
is_group 4284
lincomb 5376
listznstarelts 875
makeLden 2128
matheadlong 1540
matrixnorm 16566
monomorphismratlift 2387
monoratlift 6458
muldiv 0
notgalois 1407
numberofconjugates 637
padicisint 39424
permtopol 19166
polheadlong 42504
poltopermtest 4522
s4galoisgen 28
s4makelift 196
s4releveauto 196
s4test 3269
stpow 3766
sympol_aut_evalmod 1316
sympol_eval 2660
sympol_eval_newtonsum 3941
sympol_is1to1_lg 2562
testpermutation 2128
vandermondeinverse 4083
vandermondeinverseprep 4174
vecheadlong 26712
vectopol 20300
wpow 1645

Generated by: LCOV version 1.11