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 to exceed 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 - polarit2.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.12.0 lcov report (development 23353-42c433a02) Lines: 1879 2071 90.7 %
Date: 2018-12-15 05:41:59 Functions: 185 193 95.9 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
Q_mul_to_int 0
RgXQ_sqr_FpXQXQ 0
RgX_extgcd_simple 0
RgX_gcd_simple 0
pol_approx0 0
s_centermod 0
scalar_res 0
subresext 0
RgXQ_inv_FpXQXQ 7
RgXQ_mul_FpXQXQ 7
RgX_extgcd_FpXQX 7
RgX_gcd_FpXQX 7
idmulred 7
reduceddiscsmith 7
sylvestermatrix 7
RgXQ_sqr_FpXQ 14
RgX_resultant_FpX 14
vecprod 14
RgX_resultant_FpXQX 21
resultant2 21
RgX_disc_FpXQX 28
newtonpoly 28
zero_extgcd 28
Q_factor_limit 35
RgX_disc_FpX 42
gauss_factor_p 42
gauss_factor 49
gauss_primpart 49
RgX_Frobenius_deflate 56
RgX_extgcd_FpX 56
gc_gcdext 63
zero_bezout 63
RgXQ_ratlift 70
RgX_is_irred 70
RgX_is_irred_i 70
gauss_primpart_try 70
isirreducible 70
gauss_cmp 91
scalar_bezout 112
RgX_fix_quad 126
RgX_sturmpart 133
caract_const 140
FE_matconcat 161
RgXY_factor 161
RgXY_squff 161
RgXY_factor_squarefree 175
rnfcharpoly 224
RgX_Rg_type 294
gen_cmp_RgXY 308
fix_lcm 336
gbezout 350
gcdext0 350
RgX_extgcd_fast 378
R_to_Q_down 385
R_to_Q_up 385
gauss_gcd 385
sturmpart 385
sturmpart_i 385
RgX_extgcd 413
gauss_normal 455
idpowred 609
RgXQ_inv_i 867
polresultantext 868
polresultantext0 896
roots_from_deg1 980
RgX_disc_i 1141
c_zero_gcd 1288
subresext_i 1763
polresultant0 2135
RgX_gcd_ZXQX 2268
RgX_factor 2303
triv_cont_gcd 2499
c_is_rational 2520
primpart 2674
padic_gcd 2684
must_negate 2870
Q_factor 2954
glcm0 3108
idealfactorback 3290
idmul 3619
fix_pol 3626
glcm 3626
poldisc0 3629
ggcd0 4029
RgX_liftred 4536
eltmul 4745
subres_step 5368
cont_gcd_gen 5937
RgX_disc 6030
RgX_disc_fast 6030
idpow 6132
RgX_cmbf 8589
RgX_resultant_sylvester 8659
RgX_sylvestermatrix 8659
syl_RgM 8666
Q_div_to_int 9068
RgXQ_inv_FpXQ 11571
nffactorback 14224
ginvmod 14974
RgXQ_charpoly 16099
eltpow 18184
Lazard 21321
RgX_resultant_all 21937
Lazard2 21986
RgX_neg_i 21986
nextSousResultant 21986
polsym 23618
RgXQ_inv 32433
RgXQ_inv_fast 32433
RgX_rescale_to_int 36960
factor0 37377
polsym_gen 38360
factor 40423
factor_domain 40927
ZX_content 42841
isinexactall 46529
roots_to_pol_r1 48532
resultant 58995
resultant_fast 58995
init_resultant 59016
reductum_lg 63089
RgX_Rg_mul_i 66246
vec_Q_primpart 69608
syl_RgC 72898
deg1_from_roots 83988
RgXQ_sqr 84216
RgXQ_sqr_fast 84216
Q_content 92865
RgM_type 102894
Z_content_v 113414
inexact 134169
RgX_gcd_FpX 198212
Fppow 203098
RgM_rescale_to_int 227968
RgXQ_mul_FpXQ 262591
RgM_RgC_type 266847
roots_to_pol 333728
RgX_type 336757
normalized_to_RgX 382225
RgX_type_decode 425789
Z_content 462049
RgXQ_mul 534369
RgXQ_mul_fast 534370
RgX_type3 534370
normalized_mul 713120
cont_gcd_rfrac 864904
primitive_part 1041580
factorback 1401362
Q_primpart 1600732
gcdmonome 1706230
rescale_init 2098142
gdivexact 2146038
cont_gcd_pol 2785853
cont_gcd_pol_i 2785860
cont_gcd 2802710
FpV_factorback 3691006
RgM_type2 3825331
Q_divq_to_int 3868704
centermod 4416275
centermod_i 6972276
RgM_settype 8019934
zero_gcd 8224049
Q_divmuli_to_int 8385025
Q_remove_denom 9312207
zero_gcd2 9330863
Q_primitive_part 9472559
RgX_type_is_composite 9842112
gcdiq 10383664
RgX_gcd 11331885
RgX_gcd_fast 11331885
gcdqq 11488694
Q_denom_v 12003400
Q_divi_to_int 12153846
Q_denom 15587233
Fpmul 16553307
Rg_type 17411617
Q_content_v 18592796
RgC_settype 21457291
factorback2 24655986
ggcd 27187278
gen_factorback 28380739
centermodii 42532547
Q_muli_to_int 50694955
mul 54170337
RgX_type2 65905536
content 73396424
Q_denom_safe 75730864
powi 78796275
Q_gcd 85103947
choosetype 88380637
Q_content_safe 113298280
RgX_settype 175540183
settype 633377557

Generated by: LCOV version 1.13