diff --git a/lib/internal/process/per_thread.js b/lib/internal/process/per_thread.js index f1d11911a4444ac..c22288f4313643d 100644 --- a/lib/internal/process/per_thread.js +++ b/lib/internal/process/per_thread.js @@ -23,6 +23,7 @@ const { SetPrototypeValues, StringPrototypeEndsWith, StringPrototypeReplace, + StringPrototypeReplaceAll, StringPrototypeSlice, StringPrototypeStartsWith, Symbol, @@ -33,8 +34,6 @@ const { const { errnoException, codes: { - ERR_ASSERTION, - ERR_INVALID_ARG_TYPE, ERR_INVALID_ARG_VALUE, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL @@ -42,6 +41,7 @@ const { } = require('internal/errors'); const format = require('internal/util/inspect').format; const { + isInt32, validateArray, validateNumber, validateObject, @@ -50,10 +50,6 @@ const constants = internalBinding('constants').os.signals; const kInternal = Symbol('internal properties'); -function assert(x, msg) { - if (!x) throw new ERR_ASSERTION(msg || 'assertion error'); -} - function getFastAPIs(binding) { const { hrtime: _hrtime @@ -120,9 +116,9 @@ function wrapProcessMethods(binding) { function cpuUsage(prevValue) { // If a previous value was passed in, ensure it has the correct shape. if (prevValue) { - if (!previousValueIsValid(prevValue.user)) { - validateObject(prevValue, 'prevValue'); + validateObject(prevValue, 'prevValue'); + if (!previousValueIsValid(prevValue.user)) { validateNumber(prevValue.user, 'prevValue.user'); throw new ERR_INVALID_ARG_VALUE.RangeError('prevValue.user', prevValue.user); @@ -192,18 +188,15 @@ function wrapProcessMethods(binding) { function kill(pid, sig) { let err; - // eslint-disable-next-line eqeqeq - if (pid != (pid | 0)) { - throw new ERR_INVALID_ARG_TYPE('pid', 'number', pid); - } + validateNumber(pid, 'pid'); // Preserve null signal - if (sig === (sig | 0)) { + if (isInt32(sig)) { // XXX(joyeecheung): we have to use process._kill here because // it's monkey-patched by tests. err = process._kill(pid, sig); } else { - sig = sig || 'SIGTERM'; + sig ||= 'SIGTERM'; if (constants[sig]) { err = process._kill(pid, constants[sig]); } else { @@ -251,7 +244,6 @@ function wrapProcessMethods(binding) { }; } -const replaceUnderscoresRegex = /_/g; const leadingDashesRegex = /^--?/; const trailingValuesRegex = /=.*$/; @@ -333,7 +325,7 @@ function buildAllowedFlags() { // on a dummy option set and see whether it rejects the argument or // not. if (typeof key === 'string') { - key = StringPrototypeReplace(key, replaceUnderscoresRegex, '-'); + key = StringPrototypeReplaceAll(key, '_', '-'); if (RegExpPrototypeTest(leadingDashesRegex, key)) { key = StringPrototypeReplace(key, trailingValuesRegex, ''); return ArrayPrototypeIncludes(this[kInternal].array, key); @@ -397,7 +389,6 @@ function toggleTraceCategoryState(asyncHooksEnabled) { module.exports = { toggleTraceCategoryState, getFastAPIs, - assert, buildAllowedFlags, wrapProcessMethods };