UNPKG

796 BJavaScriptView Raw
1'use strict';
2
3/**
4 * Dependencies.
5 */
6
7const fs = require('fs');
8
9/**
10 * Export `getOptions`.
11 */
12
13module.exports = getOptions;
14
15/**
16 * Get options.
17 */
18
19function getOptions () {
20 if (process.argv.length === 3 && (process.argv[2] === '-h' || process.argv[2] === '--help')) {
21 return;
22 }
23
24 const optsPath = process.argv.indexOf('--opts') === -1
25 ? 'test/mocha.opts'
26 : process.argv[process.argv.indexOf('--opts') + 1];
27
28 try {
29 const opts = fs.readFileSync(optsPath, 'utf8')
30 .replace(/\\\s/g, '%20')
31 .split(/\s/)
32 .filter(Boolean)
33 .map(value => value.replace(/%20/g, ' '));
34
35 process.argv = process.argv
36 .slice(0, 2)
37 .concat(opts.concat(process.argv.slice(2)));
38 } catch (err) {
39 // ignore
40 }
41
42 process.env.LOADED_MOCHA_OPTS = true;
43}