-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lib: improve the coverage of the validator #42443
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch. Please just move the typeof value !== 'number'
check instead of adding additional ones. That would already cover the situation.
In addition, please add a test that verifies that the correct error is thrown.
@BridgeAR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
test/parallel/test-validators.js
Outdated
|
||
// validateInt32() and validateUint32() | ||
[ | ||
Symbol(), 1n, {}, [], false, true, undefined, null, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Symbol(), 1n, {}, [], false, true, undefined, null, | |
Symbol(), 1n, {}, [], false, true, undefined, null, () => {}, '', '1', |
test/parallel/test-validators.js
Outdated
code: 'ERR_OUT_OF_RANGE' | ||
})); | ||
[ | ||
Symbol(), 1n, {}, [], false, true, undefined, null, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Symbol(), 1n, {}, [], false, true, undefined, null, | |
Symbol(), 1n, {}, [], false, true, undefined, null, () => {}, '', '1', |
4294967296, -1, NaN, | ||
].forEach((val) => assert.throws(() => validateUint32(val, 'name'), { | ||
code: 'ERR_OUT_OF_RANGE' | ||
})); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
})); | |
})); | |
// Ensure it doesn't throw on acceptable values: | |
validateInt32(0, 'name'); | |
validateUint32(0, 'name'); | |
validateInt32(1, 'name'); | |
validateUint32(1, 'name'); | |
validateInt32(-1, 'name'); |
It looks like CI is having some problems with centos7-arm64-gcc8,ubuntu1804-arm64,ubuntu2004-arm64. |
Landed in 302fd02 |
PR-URL: nodejs#42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: #42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: nodejs#42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: #42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: #42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: #42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: #42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
PR-URL: nodejs/node#42443 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Mohammed Keyvanzadeh <[email protected]> Reviewed-By: Antoine du Hamel <[email protected]> Reviewed-By: James M Snell <[email protected]>
In current version, if you take
symbol
orbigint
as arguments to the validator, a native error will be thrown.