1 | const Path = require('path')
|
2 | const report = require('c8/lib/report');
|
3 | const arrify = require('arrify');
|
4 | const rimraf = require('rimraf');
|
5 | const { defaultExclude } = require('test-exclude')
|
6 |
|
7 | module.exports = (argv, { files } = {}) => {
|
8 |
|
9 | if (!(process.version.match(/^v1[1-9]/) || process.version.match(/^v10\.[1-9]/))) {
|
10 | throw new Error('Coverage requires Node.js >= 10.10.0');
|
11 | }
|
12 |
|
13 | const tempDirectory = process.env.NODE_V8_COVERAGE = argv.coverageDir = process.env.NODE_V8_COVERAGE || Path.join(argv.cwd || process.cwd(), argv.coverageDir || 'coverage', '.tmp');
|
14 |
|
15 | try {
|
16 | report({
|
17 |
|
18 |
|
19 |
|
20 | include: [],
|
21 | exclude: defaultExclude,
|
22 | reporter: arrify(argv.report),
|
23 | tempDirectory,
|
24 | watermarks: argv.watermarks,
|
25 | resolve: '',
|
26 | omitRelative: true
|
27 | });
|
28 | } finally {
|
29 | }
|
30 | rimraf.sync(tempDirectory);
|
31 | };
|