From e53b702dd407c65d04c7d93473dba237424bd4b8 Mon Sep 17 00:00:00 2001 From: juergba Date: Thu, 6 Jun 2019 14:28:16 +0200 Subject: [PATCH] no child-process - no second options parsing --- bin/mocha | 6 +++--- lib/cli/cli.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/mocha b/bin/mocha index df7cf48ca3..92a72d2b70 100755 --- a/bin/mocha +++ b/bin/mocha @@ -17,9 +17,7 @@ const { isNodeFlag, impliesNoTimeouts } = require('../lib/cli/node-flags'); -const unparse = require('yargs-unparser'); const debug = require('debug')('mocha:cli:mocha'); -const {aliases} = require('../lib/cli/run-option-metadata'); const nodeEnv = require('node-environment-flags'); const mochaArgs = {}; @@ -120,6 +118,8 @@ if (nodeArgs.gc) { if (Object.keys(nodeArgs).length) { const {spawn} = require('child_process'); const mochaPath = require.resolve('../lib/cli/cli.js'); + const unparse = require('yargs-unparser'); + const {aliases} = require('../lib/cli/run-option-metadata'); debug('final node args', nodeArgs); @@ -151,5 +151,5 @@ if (Object.keys(nodeArgs).length) { proc.kill('SIGTERM'); // if that didn't work, we're probably in an infinite loop, so make it die. }); } else { - require('../lib/cli/cli').main(unparse(mochaArgs, {alias: aliases})); + require('../lib/cli/cli').main(['preParsedOptions', mochaArgs]); } diff --git a/lib/cli/cli.js b/lib/cli/cli.js index dee8e70dd4..4ef633e6c0 100755 --- a/lib/cli/cli.js +++ b/lib/cli/cli.js @@ -34,7 +34,7 @@ exports.main = (argv = process.argv.slice(2)) => { Error.stackTraceLimit = Infinity; // configurable via --stack-trace-limit? - var args = loadOptions(argv); + var args = argv[0] === 'preParsedOptions' ? argv[1] : loadOptions(argv); yargs() .scriptName('mocha')