crypto: fix KeyObject handle type error message
Fix KeyObject handle type error message. Add test to cover KeyObject ERR_INVALID_ARG_TYPE exception. PR-URL: https://github.com/nodejs/node/pull/27904 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
This commit is contained in:
parent
a40aae8d1b
commit
f692299764
@ -44,7 +44,7 @@ class KeyObject {
|
|||||||
if (type !== 'secret' && type !== 'public' && type !== 'private')
|
if (type !== 'secret' && type !== 'public' && type !== 'private')
|
||||||
throw new ERR_INVALID_ARG_VALUE('type', type);
|
throw new ERR_INVALID_ARG_VALUE('type', type);
|
||||||
if (typeof handle !== 'object')
|
if (typeof handle !== 'object')
|
||||||
throw new ERR_INVALID_ARG_TYPE('handle', 'string', handle);
|
throw new ERR_INVALID_ARG_TYPE('handle', 'object', handle);
|
||||||
|
|
||||||
this[kKeyType] = type;
|
this[kKeyType] = type;
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ const {
|
|||||||
createSecretKey,
|
createSecretKey,
|
||||||
createPublicKey,
|
createPublicKey,
|
||||||
createPrivateKey,
|
createPrivateKey,
|
||||||
|
KeyObject,
|
||||||
randomBytes,
|
randomBytes,
|
||||||
publicEncrypt,
|
publicEncrypt,
|
||||||
privateDecrypt
|
privateDecrypt
|
||||||
@ -39,6 +40,27 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
// Attempting to create a key of a wrong type should throw
|
||||||
|
const TYPE = 'wrong_type';
|
||||||
|
|
||||||
|
common.expectsError(() => new KeyObject(TYPE), {
|
||||||
|
type: TypeError,
|
||||||
|
code: 'ERR_INVALID_ARG_VALUE',
|
||||||
|
message: `The argument 'type' is invalid. Received '${TYPE}'`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
// Attempting to create a key with non-object handle should throw
|
||||||
|
common.expectsError(() => new KeyObject('secret', ''), {
|
||||||
|
type: TypeError,
|
||||||
|
code: 'ERR_INVALID_ARG_TYPE',
|
||||||
|
message:
|
||||||
|
'The "handle" argument must be of type object. Received type string'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
const keybuf = randomBytes(32);
|
const keybuf = randomBytes(32);
|
||||||
const key = createSecretKey(keybuf);
|
const key = createSecretKey(keybuf);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user