gulp-mocha-c8 is a gulp plugin that runs mocha tests through c8.
gulp-mocha-c8 provides a function to run mocha tests with c8 within a gulp task.
var mochaC8 = require('gulp-mocha-c8');
gulp.task('default', () =>
gulp.src('test.js', {read: false})
// `gulp-mocha-c8` needs filepaths so you can't have any plugins before it
.pipe(mochaC8({
mochaOpts: {
reporter: 'json'
},
c8Opts: {
coverageDirectory: './coverage'
})
);
);
The c8 options are passed directly to its binary and supports the following options:
An array of files to include in reporting.
An array of files to exclude from reporting.
The directory to put coverage files. The final output (if not in the terminal) still goes to ./coverage. This options is just for individual coverage files.
Options are passed directly to the mocha
binary, so you can use any its command-line options in a camelCased form. Arrays and key/value objects are correctly converted to the comma separated list format Mocha expects. Listed below are some of the more commonly used options:
Type: string
Default: bdd
Values: bdd
tdd
qunit
exports
Interface to use.
Type: string
Default: spec
Values: Reporters
Reporter that will be used.
This option can also be used to utilize third-party reporters. For example, if you npm install mocha-lcov-reporter
you can then do use mocha-lcov-reporter
as value.
Type: Object
Example: {reportFilename: 'index.html'}
Reporter specific options.
Type: Array
List of accepted global variable names, example ['YUI']
. Accepts wildcards to match multiple global variables, e.g. ['gulp*']
or even ['*']
. See Mocha globals option.
Type: number
Default: 2000
Test-case timeout in milliseconds.
Type: boolean
Default: false
Bail on the first test failure.
Type: boolean
Default: false
Check for global variable leaks.
Type: string
Only run tests matching the given pattern which is internally compiled to a RegExp.
Type: Array
Require custom modules before tests are run.
Type: string
Example: js:babel-core/register
Specify a compiler.