summaryrefslogtreecommitdiff
path: root/cli/tests/unit
diff options
context:
space:
mode:
author李瑞丰 <liruifeng1024@gmail.com>2022-10-03 12:07:25 +0800
committerGitHub <noreply@github.com>2022-10-03 09:37:25 +0530
commitb3444e0d3b3544816e0286dda3e861fd5debea65 (patch)
tree1bfbe5af1c433ed42088b23c0060287de3604f4e /cli/tests/unit
parentbac3a1210f9c773112f3d5001305d1cc6a097798 (diff)
fix(ext/crypto): fix importKey error when leading zeroes (#16009)
Co-authored-by: Jason <m.jason.liu@outlook.com>
Diffstat (limited to 'cli/tests/unit')
-rw-r--r--cli/tests/unit/webcrypto_test.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/cli/tests/unit/webcrypto_test.ts b/cli/tests/unit/webcrypto_test.ts
index a6cab93dd..6695b157a 100644
--- a/cli/tests/unit/webcrypto_test.ts
+++ b/cli/tests/unit/webcrypto_test.ts
@@ -1827,3 +1827,30 @@ Deno.test(async function exportKeyNotExtractable() {
await crypto.subtle.exportKey("raw", key);
}, DOMException);
});
+
+// https://github.com/denoland/deno/issues/15126
+Deno.test(async function testImportLeadingZeroesKey() {
+ const alg = { name: "ECDSA", namedCurve: "P-256" };
+
+ const jwk = {
+ kty: "EC",
+ crv: "P-256",
+ alg: "ES256",
+ x: "EvidcdFB1xC6tgfakqZsU9aIURxAJkcX62zHe1Nt6xU",
+ y: "AHsk6BioGM7MZWeXOE_49AGmtuaXFT3Ill3DYtz9uYg",
+ d: "WDeYo4o1heCF9l_2VIaClRyIeO16zsMlN8UG6Le9dU8",
+ "key_ops": ["sign"],
+ ext: true,
+ };
+
+ const key = await crypto.subtle.importKey(
+ "jwk",
+ jwk,
+ alg,
+ true,
+ ["sign"],
+ );
+
+ assert(key instanceof CryptoKey);
+ assertEquals(key.type, "private");
+});