Grunt plugin to merge lcov files from multiple test runs.
npm install grunt-lcov-merge2> Grunt plugin to merge lcov files from multiple test runs, for use with a tool like coveralls.
0.4.0To install, add grunt-lcov-merge to your package.json. The easiest way to do that is
``shell`
npm install grunt-lcov-merge --save-dev
Once the plugin has been installed, you'll need to enable it in your Gruntfile by adding
`js`
grunt.loadNpmTasks('grunt-lcov-merge');
You can then run with
`shell`
grunt lcovMerge
Default: ['file']What emitters to send the merged data to. Supported emitters are 'file', which sends the merged data to a file, and 'event', which sends it out to the 'coverage' event and can be listened to with
`js
grunt.event.on('coverage', function(lcov, done) {});
`#### outputFile
Type:
String
Default coverage/lcov-merge.infoIf a file emitter is specified, this is the output file to pipe data to.
$3
`js
grunt.initConfig({
jshint: {
src: ['Gruntfile.js', 'tasks//.js', 'test//.js'],
options: {
jshintrc: true
}
}, mocha_istanbul: {
coverage: {
src: 'test/*/.spec.js',
options: {
coverageFolder: 'build/coverage',
reportFormats: ['lcov'],
}
}
},
lcovMerge: {
options: {
emitters: ['event', 'file'],
outputFile: 'mergeLcov.info'
},
src: ['build/coverage/.info', 'build/coverage//.info']
}
});
grunt.event.on('coverage', function(lcov, done) {
// See below
done();
});
grunt.loadNpmTasks('grunt-lcov-merge');
`Note that grunt-lcov-merge allows for source files to be specified via any file format.
Event emitter
One of the most useful ways to consume this plugin is to use the coverage event to send the lcov data to a service like coveralls:`js
grunt.event.on('coverage', function(lcov, done) {
require('coveralls').handleInput(lcov, function(err) {
if (err) {
return done(err);
}
done();
});
``Using the coveralls module means that Travis-CI can automatically send your merged LCOV to coveralls.