@@ -10,6 +10,8 @@ const {
1010 validateNumber,
1111 validateObject,
1212 validateString,
13+ validateInt32,
14+ validateUint32,
1315} = require ( 'internal/validators' ) ;
1416const { MAX_SAFE_INTEGER , MIN_SAFE_INTEGER } = Number ;
1517const outOfRangeError = {
@@ -41,6 +43,34 @@ const invalidArgValueError = {
4143 // validateInteger() works with unsafe integers.
4244 validateInteger ( MAX_SAFE_INTEGER + 1 , 'foo' , 0 , MAX_SAFE_INTEGER + 1 ) ;
4345 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' ) ) ;
4474}
4575
4676{
0 commit comments