@@ -10,6 +10,8 @@ const {
10
10
validateNumber,
11
11
validateObject,
12
12
validateString,
13
+ validateInt32,
14
+ validateUint32,
13
15
} = require ( 'internal/validators' ) ;
14
16
const { MAX_SAFE_INTEGER , MIN_SAFE_INTEGER } = Number ;
15
17
const outOfRangeError = {
@@ -41,6 +43,34 @@ const invalidArgValueError = {
41
43
// validateInteger() works with unsafe integers.
42
44
validateInteger ( MAX_SAFE_INTEGER + 1 , 'foo' , 0 , MAX_SAFE_INTEGER + 1 ) ;
43
45
validateInteger ( MIN_SAFE_INTEGER - 1 , 'foo' , MIN_SAFE_INTEGER - 1 ) ;
46
+
47
+ // validateInt32() and validateUint32()
48
+ [
49
+ Symbol ( ) , 1n , { } , [ ] , false , true , undefined , null , ( ) => { } , '' , '1' ,
50
+ ] . forEach ( ( val ) => assert . throws ( ( ) => validateInt32 ( val , 'name' ) , {
51
+ code : 'ERR_INVALID_ARG_TYPE'
52
+ } ) ) ;
53
+ [
54
+ 2147483647 + 1 , - 2147483648 - 1 , NaN ,
55
+ ] . forEach ( ( val ) => assert . throws ( ( ) => validateInt32 ( val , 'name' ) , {
56
+ code : 'ERR_OUT_OF_RANGE'
57
+ } ) ) ;
58
+ [
59
+ 0 , 1 , - 1 ,
60
+ ] . forEach ( ( val ) => validateInt32 ( val , 'name' ) ) ;
61
+ [
62
+ Symbol ( ) , 1n , { } , [ ] , false , true , undefined , null , ( ) => { } , '' , '1' ,
63
+ ] . forEach ( ( val ) => assert . throws ( ( ) => validateUint32 ( val , 'name' ) , {
64
+ code : 'ERR_INVALID_ARG_TYPE'
65
+ } ) ) ;
66
+ [
67
+ 4294967296 , - 1 , NaN ,
68
+ ] . forEach ( ( val ) => assert . throws ( ( ) => validateUint32 ( val , 'name' ) , {
69
+ code : 'ERR_OUT_OF_RANGE'
70
+ } ) ) ;
71
+ [
72
+ 0 , 1 ,
73
+ ] . forEach ( ( val ) => validateUint32 ( val , 'name' ) ) ;
44
74
}
45
75
46
76
{
0 commit comments