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:
- with GMP kernel
- with GMP kernel using --mt=pthread
- with native kernel, including micro-assembler code
- with native kernel, without micro-assembler
- with native kernel, without micro-assembler, disabling GCC extensions
(DISABLE_INLINE)
- with GMP kernel, emulating an
x86_32
architecture at
Configure time via setarch
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 |
|
|
|
|
|
|
|
|
|
Filename |
Line Coverage |
Functions |
emacs.c |
|
0.0 % |
0 / 4 |
0.0 % |
0 / 1 |
gp.c |
|
82.9 % |
277 / 334 |
85.7 % |
24 / 28 |
gp_rl.c |
|
18.3 % |
39 / 213 |
11.1 % |
2 / 18 |
texmacs.c |
|
0.0 % |
0 / 112 |
0.0 % |
0 / 12 |
whatnow.c |
|
100.0 % |
32 / 32 |
100.0 % |
2 / 2 |