summaryrefslogtreecommitdiff
path: root/test/parallel/test-webcrypto-keygen.js
diff options
context:
space:
mode:
authorFilip Skokan <panva.ip@gmail.com>2021-05-10 12:33:11 +0200
committerFilip Skokan <panva.ip@gmail.com>2021-05-17 10:29:18 +0200
commit3ee1f9a29a6b18da79ac96c7e5e80f2933dfe2fb (patch)
tree71083800dae51ca21684b06bc3ecfffaa04356df /test/parallel/test-webcrypto-keygen.js
parent2130598e91562efbfd594ba14f5f3eda2b2432d6 (diff)
downloadnode-new-3ee1f9a29a6b18da79ac96c7e5e80f2933dfe2fb.tar.gz
util: add util.types.isKeyObject and util.types.isCryptoKey
closes #38611 PR-URL: https://github.com/nodejs/node/pull/38619 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Diffstat (limited to 'test/parallel/test-webcrypto-keygen.js')
-rw-r--r--test/parallel/test-webcrypto-keygen.js23
1 files changed, 22 insertions, 1 deletions
diff --git a/test/parallel/test-webcrypto-keygen.js b/test/parallel/test-webcrypto-keygen.js
index 1a48d6761c..e94a7b4488 100644
--- a/test/parallel/test-webcrypto-keygen.js
+++ b/test/parallel/test-webcrypto-keygen.js
@@ -6,7 +6,11 @@ if (!common.hasCrypto)
common.skip('missing crypto');
const assert = require('assert');
-const { subtle, CryptoKey } = require('crypto').webcrypto;
+const { types: { isCryptoKey } } = require('util');
+const {
+ webcrypto: { subtle, CryptoKey },
+ createSecretKey,
+} = require('crypto');
const allUsages = [
'encrypt',
@@ -220,6 +224,8 @@ const vectors = {
assert(publicKey);
assert(privateKey);
+ assert(isCryptoKey(publicKey));
+ assert(isCryptoKey(privateKey));
assert(publicKey instanceof CryptoKey);
assert(privateKey instanceof CryptoKey);
@@ -366,6 +372,8 @@ const vectors = {
assert(publicKey);
assert(privateKey);
+ assert(isCryptoKey(publicKey));
+ assert(isCryptoKey(privateKey));
assert.strictEqual(publicKey.type, 'public');
assert.strictEqual(privateKey.type, 'private');
@@ -430,6 +438,7 @@ const vectors = {
}, true, usages);
assert(key);
+ assert(isCryptoKey(key));
assert.strictEqual(key.type, 'secret');
assert.strictEqual(key.extractable, true);
@@ -488,6 +497,7 @@ const vectors = {
}
assert(key);
+ assert(isCryptoKey(key));
assert.strictEqual(key.type, 'secret');
assert.strictEqual(key.extractable, true);
@@ -544,6 +554,8 @@ const vectors = {
assert(publicKey);
assert(privateKey);
+ assert(isCryptoKey(publicKey));
+ assert(isCryptoKey(privateKey));
assert.strictEqual(publicKey.type, 'public');
assert.strictEqual(privateKey.type, 'private');
@@ -634,6 +646,8 @@ const vectors = {
}, true, ['deriveKey']);
assert(publicKey);
assert(privateKey);
+ assert(isCryptoKey(publicKey));
+ assert(isCryptoKey(privateKey));
assert.strictEqual(publicKey.type, 'public');
assert.strictEqual(privateKey.type, 'private');
assert.strictEqual(publicKey.algorithm.name, 'NODE-DH');
@@ -646,3 +660,10 @@ const vectors = {
assert.throws(() => new CryptoKey(), {
code: 'ERR_OPERATION_FAILED'
});
+
+{
+ const buffer = Buffer.from('Hello World');
+ const keyObject = createSecretKey(buffer);
+ assert(!isCryptoKey(buffer));
+ assert(!isCryptoKey(keyObject));
+}