From fcc005ca4c358260f5aad801d52f4a446eac0177 Mon Sep 17 00:00:00 2001 From: Evaline Ju Date: Wed, 18 Nov 2020 20:23:03 -0800 Subject: [PATCH] fix: remove reason from unparsable file error and add to messages --- lib/cli/config.js | 5 ++++- lib/cli/options.js | 5 ++++- lib/errors.js | 5 +---- test/node-unit/cli/config.spec.js | 2 +- test/node-unit/cli/options.spec.js | 2 +- test/unit/errors.spec.js | 3 +-- 6 files changed, 12 insertions(+), 10 deletions(-) diff --git a/lib/cli/config.js b/lib/cli/config.js index 044820f446..8b6320324c 100644 --- a/lib/cli/config.js +++ b/lib/cli/config.js @@ -83,7 +83,10 @@ exports.loadConfig = filepath => { config = parsers.json(filepath); } } catch (err) { - throw createUnparsableFileError(err, filepath); + throw createUnparsableFileError( + `Unable to read/parse ${filepath}: ${err}`, + filepath + ); } return config; }; diff --git a/lib/cli/options.js b/lib/cli/options.js index 2a9ea58b47..5c88e5c7fe 100644 --- a/lib/cli/options.js +++ b/lib/cli/options.js @@ -190,7 +190,10 @@ const loadPkgRc = (args = {}) => { } } catch (err) { if (args.package) { - throw createUnparsableFileError(err, filepath); + throw createUnparsableFileError( + `Unable to read/parse ${filepath}: ${err}`, + filepath + ); } debug('failed to read default package.json at %s; ignoring', filepath); } diff --git a/lib/errors.js b/lib/errors.js index 07868b1555..681198ae27 100644 --- a/lib/errors.js +++ b/lib/errors.js @@ -508,14 +508,11 @@ function createTimeoutError(msg, timeout, file) { * @static * @param {string} message - Error message to be displayed. * @param {string} filename - File name - * @param {string} [reason] - Why the filename is unparsable. * @returns {Error} Error with code {@link constants.UNPARSABLE_FILE} */ -function createUnparsableFileError(message, filename, reason) { +function createUnparsableFileError(message, filename) { var err = new Error(message); err.code = constants.UNPARSABLE_FILE; - err.reason = - typeof reason !== 'undefined' ? reason : `${filename} is unparsable`; return err; } diff --git a/test/node-unit/cli/config.spec.js b/test/node-unit/cli/config.spec.js index 05c8fa82b7..270e3ec95a 100644 --- a/test/node-unit/cli/config.spec.js +++ b/test/node-unit/cli/config.spec.js @@ -116,7 +116,7 @@ describe('cli/config', function() { expect( () => loadConfig('goo.yaml'), 'to throw', - 'goo.yaml is unparsable' + 'Unable to read/parse goo.yaml: goo.yaml is unparsable' ); }); }); diff --git a/test/node-unit/cli/options.spec.js b/test/node-unit/cli/options.spec.js index ce308d9254..f307e91c9a 100644 --- a/test/node-unit/cli/options.spec.js +++ b/test/node-unit/cli/options.spec.js @@ -150,7 +150,7 @@ describe('options', function() { loadOptions('--package /something/wherever --require butts'); }, 'to throw', - 'bad file message' + 'Unable to read/parse /something/wherever: bad file message' ); }); }); diff --git a/test/unit/errors.spec.js b/test/unit/errors.spec.js index c478b4f323..d610b04acd 100644 --- a/test/unit/errors.spec.js +++ b/test/unit/errors.spec.js @@ -76,8 +76,7 @@ describe('Errors', function() { 'to satisfy', { message: message, - code: 'ERR_MOCHA_UNPARSABLE_FILE', - reason: 'badFilePath is unparsable' + code: 'ERR_MOCHA_UNPARSABLE_FILE' } ); });