mirror of
https://github.com/nodejs/node.git
synced 2025-04-30 07:19:19 +00:00
readline: refactor to use validateNumber
`validateNumber` throws more proper error code and error name. PR-URL: https://github.com/nodejs/node/pull/45801 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Minwoo Jung <nodecorelab@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
This commit is contained in:
parent
671ffd7825
commit
dc06df31b6
@ -19,7 +19,6 @@ const {
|
||||
MathMax,
|
||||
MathMaxApply,
|
||||
NumberIsFinite,
|
||||
NumberIsNaN,
|
||||
ObjectSetPrototypeOf,
|
||||
RegExpPrototypeExec,
|
||||
StringPrototypeCodePointAt,
|
||||
@ -42,6 +41,7 @@ const {
|
||||
const {
|
||||
validateAbortSignal,
|
||||
validateArray,
|
||||
validateNumber,
|
||||
validateString,
|
||||
validateUint32,
|
||||
} = require('internal/validators');
|
||||
@ -196,13 +196,7 @@ function InterfaceConstructor(input, output, completer, terminal) {
|
||||
historySize = kHistorySize;
|
||||
}
|
||||
|
||||
if (
|
||||
typeof historySize !== 'number' ||
|
||||
NumberIsNaN(historySize) ||
|
||||
historySize < 0
|
||||
) {
|
||||
throw new ERR_INVALID_ARG_VALUE.RangeError('historySize', historySize);
|
||||
}
|
||||
validateNumber(historySize, 'historySize', 0);
|
||||
|
||||
// Backwards compat; check the isTTY prop of the output stream
|
||||
// when `terminal` was not specified
|
||||
|
@ -126,7 +126,7 @@ function assertCursorRowsAndCols(rli, rows, cols) {
|
||||
});
|
||||
|
||||
// Constructor throws if historySize is not a positive number
|
||||
['not a number', -1, NaN, {}, true, Symbol(), null].forEach((historySize) => {
|
||||
[-1, NaN].forEach((historySize) => {
|
||||
assert.throws(() => {
|
||||
readline.createInterface({
|
||||
input,
|
||||
@ -134,7 +134,20 @@ function assertCursorRowsAndCols(rli, rows, cols) {
|
||||
});
|
||||
}, {
|
||||
name: 'RangeError',
|
||||
code: 'ERR_INVALID_ARG_VALUE'
|
||||
code: 'ERR_OUT_OF_RANGE',
|
||||
});
|
||||
});
|
||||
|
||||
// Constructor throws if type of historySize is not a number
|
||||
['not a number', {}, true, Symbol(), null].forEach((historySize) => {
|
||||
assert.throws(() => {
|
||||
readline.createInterface({
|
||||
input,
|
||||
historySize,
|
||||
});
|
||||
}, {
|
||||
name: 'TypeError',
|
||||
code: 'ERR_INVALID_ARG_TYPE',
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -103,7 +103,7 @@ function assertCursorRowsAndCols(rli, rows, cols) {
|
||||
});
|
||||
|
||||
// Constructor throws if historySize is not a positive number
|
||||
['not a number', -1, NaN, {}, true, Symbol(), null].forEach((historySize) => {
|
||||
[-1, NaN].forEach((historySize) => {
|
||||
assert.throws(() => {
|
||||
readline.createInterface({
|
||||
input,
|
||||
@ -111,7 +111,20 @@ function assertCursorRowsAndCols(rli, rows, cols) {
|
||||
});
|
||||
}, {
|
||||
name: 'RangeError',
|
||||
code: 'ERR_INVALID_ARG_VALUE'
|
||||
code: 'ERR_OUT_OF_RANGE',
|
||||
});
|
||||
});
|
||||
|
||||
// Constructor throws if type of historySize is not a number
|
||||
['not a number', {}, true, Symbol(), null].forEach((historySize) => {
|
||||
assert.throws(() => {
|
||||
readline.createInterface({
|
||||
input,
|
||||
historySize,
|
||||
});
|
||||
}, {
|
||||
name: 'TypeError',
|
||||
code: 'ERR_INVALID_ARG_TYPE',
|
||||
});
|
||||
});
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user