emboss/krypt-core — Issue #25: rake coverage aborts
Author: emboss
Created: 2012-01-26 21:53:49+00:00
State: open

Hi, I just ran 'rake coverage' and somehow the task failed, although the coverage files were created in the tmp directory and also in the main directory. I analyzed the trace:

This is the output for gcov -o:
gcov -o tmp/x86_64-linux/kryptcore/2.0.0 ext/krypt/core/krypt*.h ext/krypt/core/krypt*.c
tmp/x86_64-linux/kryptcore/2.0.0/krypt_missing.gcno:cannot open graph file
tmp/x86_64-linux/kryptcore/2.0.0/krypt-os.gcno:cannot open graph file
tmp/x86_64-linux/kryptcore/2.0.0/krypt_missing.gcno:cannot open graph file
File '../../../../ext/krypt/core/krypt_io_out_fd.c'
No executable lines
../../../../ext/krypt/core/krypt_io_out_fd.c:creating 'krypt_io_out_fd.c.gcov'
../../../../ext/krypt/core/krypt_io_out_fd.c:cannot open source file
...
< it says 'No executable lines' and 'cannot open source file for all of the .c files, but I don't know why?>

Then later, for lcov:

lcov -c -d . --output-file kryptcore.info
Capturing coverage data from .
Found gcov version: 4.6.2
Scanning . for .gcda files ...
Found 16 data files in .
Processing ./tmp/x86_64-linux/kryptcore/2.0.0/krypt_asn1.gcda
geninfo: WARNING: no data found for /home/martin/Projekte/Ruby/github/krypt-core/ext/krypt/core/krypt_asn1.c
Processing ./tmp/x86_64-linux/kryptcore/2.0.0/krypt_io_in_generic.gcda
geninfo: WARNING: no data found for /home/martin/Projekte/Ruby/github/krypt-core/ext/krypt/core/krypt_io_in_generic.c
... and so on ...

and finally:

Finished .info-file creation
lcov -r kryptcore.info ruby.h --output-file kryptcore.info
Reading tracefile kryptcore.info
Removing /home/martin/ruby/include/ruby-2.0.0/ruby/ruby.h
Deleted 1 files
Writing data to kryptcore.info
Done.
lcov -r kryptcore.info '*include*' --output-file kryptcore.info
Reading tracefile kryptcore.info
lcov: ERROR: no valid records found in tracefile kryptcore.info
rake aborted!
Command failed with status (255): [lcov -r kryptcore.info '*include*' --outpu...]

Do you experience the same behavior or does it work on your side? [Note: You need to exclude integer, enumerated, sequence and set spec, because I produced an infinite loop in the currently commited code :P Working on that...]