Spaces:
Paused
Paused
| ; | |
| /** | |
| * Metadata about various options of the `run` command | |
| * @see module:lib/cli/run | |
| * @module | |
| * @private | |
| */ | |
| /** | |
| * Dictionary of yargs option types to list of options having said type | |
| * @type {{string:string[]}} | |
| * @private | |
| */ | |
| const TYPES = (exports.types = { | |
| array: [ | |
| 'extension', | |
| 'file', | |
| 'global', | |
| 'ignore', | |
| 'reporter-option', | |
| 'require', | |
| 'spec', | |
| 'watch-files', | |
| 'watch-ignore' | |
| ], | |
| boolean: [ | |
| 'allow-uncaught', | |
| 'async-only', | |
| 'bail', | |
| 'check-leaks', | |
| 'color', | |
| 'delay', | |
| 'diff', | |
| 'exit', | |
| 'forbid-only', | |
| 'forbid-pending', | |
| 'full-trace', | |
| 'growl', | |
| 'inline-diffs', | |
| 'invert', | |
| 'list-interfaces', | |
| 'list-reporters', | |
| 'no-colors', | |
| 'parallel', | |
| 'recursive', | |
| 'sort', | |
| 'watch' | |
| ], | |
| number: ['retries', 'jobs'], | |
| string: [ | |
| 'config', | |
| 'fgrep', | |
| 'grep', | |
| 'package', | |
| 'reporter', | |
| 'ui', | |
| 'slow', | |
| 'timeout' | |
| ] | |
| }); | |
| /** | |
| * Option aliases keyed by canonical option name. | |
| * Arrays used to reduce | |
| * @type {{string:string[]}} | |
| * @private | |
| */ | |
| exports.aliases = { | |
| 'async-only': ['A'], | |
| bail: ['b'], | |
| color: ['c', 'colors'], | |
| fgrep: ['f'], | |
| global: ['globals'], | |
| grep: ['g'], | |
| growl: ['G'], | |
| ignore: ['exclude'], | |
| invert: ['i'], | |
| jobs: ['j'], | |
| 'no-colors': ['C'], | |
| parallel: ['p'], | |
| reporter: ['R'], | |
| 'reporter-option': ['reporter-options', 'O'], | |
| require: ['r'], | |
| slow: ['s'], | |
| sort: ['S'], | |
| timeout: ['t', 'timeouts'], | |
| ui: ['u'], | |
| watch: ['w'] | |
| }; | |
| const ALL_MOCHA_FLAGS = Object.keys(TYPES).reduce((acc, key) => { | |
| // gets all flags from each of the fields in `types`, adds those, | |
| // then adds aliases of each flag (if any) | |
| TYPES[key].forEach(flag => { | |
| acc.add(flag); | |
| const aliases = exports.aliases[flag] || []; | |
| aliases.forEach(alias => { | |
| acc.add(alias); | |
| }); | |
| }); | |
| return acc; | |
| }, new Set()); | |
| /** | |
| * Returns `true` if the provided `flag` is known to Mocha. | |
| * @param {string} flag - Flag to check | |
| * @returns {boolean} If `true`, this is a Mocha flag | |
| * @private | |
| */ | |
| exports.isMochaFlag = flag => { | |
| return ALL_MOCHA_FLAGS.has(flag.replace(/^--?/, '')); | |
| }; | |