Skip to content

Commit 88d71dc

Browse files
authored
lib: refactor to use min/max of validateNumber
Fix NumberIsNaN is called two times and change error code to ERR_OUT_OF_RANGE when RangeError is occurred in test. PR-URL: #45772 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com>
1 parent bfadee5 commit 88d71dc

2 files changed

Lines changed: 4 additions & 11 deletions

File tree

‎lib/internal/histogram.js‎

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
const{
44
MapPrototypeEntries,
55
NumberIsNaN,
6-
NumberIsInteger,
76
NumberMAX_SAFE_INTEGER,
87
ObjectFromEntries,
98
ReflectConstruct,
@@ -186,9 +185,8 @@ class Histogram {
186185
if(!isHistogram(this))
187186
thrownewERR_INVALID_THIS('Histogram');
188187
validateNumber(percentile,'percentile');
189-
190188
if(NumberIsNaN(percentile)||percentile<=0||percentile>100)
191-
thrownewERR_INVALID_ARG_VALUE.RangeError('percentile',percentile);
189+
thrownewERR_OUT_OF_RANGE('percentile','> 0 && <= 100',percentile);
192190

193191
returnthis[kHandle]?.percentile(percentile);
194192
}
@@ -201,9 +199,8 @@ class Histogram {
201199
if(!isHistogram(this))
202200
thrownewERR_INVALID_THIS('Histogram');
203201
validateNumber(percentile,'percentile');
204-
205202
if(NumberIsNaN(percentile)||percentile<=0||percentile>100)
206-
thrownewERR_INVALID_ARG_VALUE.RangeError('percentile',percentile);
203+
thrownewERR_OUT_OF_RANGE('percentile','> 0 && <= 100',percentile);
207204

208205
returnthis[kHandle]?.percentileBigInt(percentile);
209206
}
@@ -283,11 +280,7 @@ class RecordableHistogram extends Histogram {
283280
return;
284281
}
285282

286-
if(!NumberIsInteger(val))
287-
thrownewERR_INVALID_ARG_TYPE('val',['integer','bigint'],val);
288-
289-
if(val<1||val>NumberMAX_SAFE_INTEGER)
290-
thrownewERR_OUT_OF_RANGE('val','a safe integer greater than 0',val);
283+
validateInteger(val,'val',1);
291284

292285
this[kHandle]?.record(val);
293286
}

‎test/sequential/test-performance-eventloopdelay.js‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ const { sleep } = require('internal/util');
9191
()=>histogram.percentile(i),
9292
{
9393
name: 'RangeError',
94-
code: 'ERR_INVALID_ARG_VALUE'
94+
code: 'ERR_OUT_OF_RANGE'
9595
}
9696
);
9797
});

0 commit comments

Comments
 (0)