From ee1995284b324b8d5e294bd13eb6693e1a2bed84 Mon Sep 17 00:00:00 2001 From: "Node.js GitHub Bot" Date: Mon, 12 Oct 2026 20:53:15 +0000 Subject: [PATCH 1/3] test: update WPT for WebCryptoAPI to b638c093cd --- test/fixtures/wpt/WebCryptoAPI/README.md | 19 ++++++++++++++++++- .../failures_AES-OCB.tentative.https.any.js | 6 ------ .../failures_Ed448.tentative.https.any.js | 6 ------ .../failures_ML-DSA.tentative.https.any.js | 6 ------ .../failures_ML-KEM.tentative.https.any.js | 6 ------ .../failures_X448.tentative.https.any.js | 6 ------ ...s_chacha20_poly1305.tentative.https.any.js | 6 ------ .../failures_kmac.tentative.https.any.js | 6 ------ ...okp_importKey_Ed448.tentative.https.any.js | 10 ---------- .../okp_importKey_X448.tentative.https.any.js | 10 ---------- ...tKey_failures_Ed448.tentative.https.any.js | 9 --------- ...rtKey_failures_X448.tentative.https.any.js | 9 --------- .../wpt/WebCryptoAPI/modern-algos/META.yml | 1 + .../derive_bits_keys/argon2.https.any.js} | 2 +- .../derive_bits_keys/argon2.js | 0 .../derive_bits_keys/argon2_vectors.js | 0 .../digest/cshake.https.any.js} | 6 +++--- .../digest/kangarootwelve.https.any.js} | 2 +- .../digest/sha3.https.any.js} | 6 +++--- .../digest/turboshake.https.any.js} | 2 +- .../{ => modern-algos}/digest/xof_digest.js | 0 .../encap_decap_bits.https.any.js} | 2 +- .../encap_decap_keys.https.any.js} | 2 +- .../encap_decap/hybrid_kem_vectors.js | 0 .../encap_decap/ml_kem_vectors.js | 0 .../encrypt_decrypt/aes_ocb.https.any.js} | 6 +++--- .../encrypt_decrypt/aes_ocb_fixtures.js | 0 .../encrypt_decrypt/aes_ocb_vectors.js | 0 .../chacha20_poly1305.https.any.js} | 2 +- .../generateKey/failures_AES-OCB.https.any.js | 6 ++++++ .../failures_Hybrid-KEM.https.any.js} | 6 +++--- .../generateKey/failures_ML-DSA.https.any.js | 6 ++++++ .../generateKey/failures_ML-KEM.https.any.js | 6 ++++++ .../failures_chacha20_poly1305.https.any.js | 6 ++++++ .../generateKey/failures_kmac.https.any.js | 6 ++++++ .../successes_AES-OCB.https.any.js} | 6 +++--- .../successes_Hybrid-KEM.https.any.js} | 6 +++--- .../successes_ML-DSA.https.any.js} | 6 +++--- .../successes_ML-KEM.https.any.js} | 6 +++--- .../successes_chacha20_poly1305.https.any.js} | 6 +++--- .../generateKey/successes_kmac.https.any.js} | 6 +++--- .../getPublicKey.https.any.js} | 2 +- .../idlharness.https.any.js} | 5 ++--- .../AES-OCB_importKey.https.any.js} | 4 ++-- .../Argon2_importKey.https.any.js} | 4 ++-- .../ChaCha20-Poly1305_importKey.https.any.js} | 4 ++-- .../Hybrid-KEM_importKey.https.any.js} | 2 +- .../Hybrid-KEM_importKey_fixtures.js | 0 .../KMAC_importKey.https.any.js} | 4 ++-- .../ML-DSA_importKey.https.any.js} | 2 +- .../ML-DSA_importKey_fixtures.js | 0 .../ML-KEM_importKey.https.any.js} | 2 +- .../ML-KEM_importKey_fixtures.js | 0 .../import_export/ml_importKey.js | 0 .../raw_format_aliases.https.any.js} | 2 +- .../serialization/aes-ocb.https.any.js} | 4 ++-- .../chacha20-poly1305.https.any.js} | 4 ++-- .../serialization/hybridkem.https.window.js} | 4 ++-- .../serialization/kmac.https.any.js} | 4 ++-- .../serialization/mldsa.https.any.js} | 4 ++-- .../serialization/mlkem.https.any.js} | 4 ++-- .../sign_verify/kmac.https.any.js} | 4 ++-- .../{ => modern-algos}/sign_verify/kmac.js | 0 .../sign_verify/kmac_vectors.js | 0 .../sign_verify/mldsa.https.any.js} | 4 ++-- .../{ => modern-algos}/sign_verify/mldsa.js | 0 .../sign_verify/mldsa_vectors.js | 0 .../supports-modern.https.any.js} | 2 +- .../supports.https.any.js} | 2 +- .../util/mldsa_key_fixtures.js | 0 .../{ => modern-algos}/util/supports.js | 0 .../wpt/WebCryptoAPI/secure-curves/META.yml | 1 + .../cfrg_curves_bits_curve448.https.any.js} | 10 +++++----- .../cfrg_curves_keys_curve448.https.any.js} | 10 +++++----- .../generateKey/failures_Ed448.https.any.js | 6 ++++++ .../generateKey/failures_X448.https.any.js | 6 ++++++ .../generateKey/successes_Ed448.https.any.js} | 6 +++--- .../generateKey/successes_X448.https.any.js} | 6 +++--- .../secure-curves/idlharness.https.any.js | 10 ++++++++++ .../okp_importKey_Ed448.https.any.js | 10 ++++++++++ .../okp_importKey_X448.https.any.js | 10 ++++++++++ .../okp_importKey_failures_Ed448.https.any.js | 9 +++++++++ .../okp_importKey_failures_X448.https.any.js | 9 +++++++++ .../serialization/ed448.https.any.js} | 4 ++-- .../serialization/x448.https.any.js} | 4 ++-- .../sign_verify/eddsa_curve448.https.any.js | 8 ++++++++ .../eddsa_curve448.tentative.https.any.js | 8 -------- test/fixtures/wpt/versions.json | 2 +- 88 files changed, 208 insertions(+), 180 deletions(-) delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_AES-OCB.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Ed448.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-DSA.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-KEM.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_X448.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_chacha20_poly1305.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/generateKey/failures_kmac.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_Ed448.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_X448.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_Ed448.tentative.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_X448.tentative.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/META.yml rename test/fixtures/wpt/WebCryptoAPI/{derive_bits_keys/argon2.tentative.https.any.js => modern-algos/derive_bits_keys/argon2.https.any.js} (85%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/derive_bits_keys/argon2.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/derive_bits_keys/argon2_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{digest/cshake.tentative.https.any.js => modern-algos/digest/cshake.https.any.js} (98%) rename test/fixtures/wpt/WebCryptoAPI/{digest/kangarootwelve.tentative.https.any.js => modern-algos/digest/kangarootwelve.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{digest/sha3.tentative.https.any.js => modern-algos/digest/sha3.https.any.js} (96%) rename test/fixtures/wpt/WebCryptoAPI/{digest/turboshake.tentative.https.any.js => modern-algos/digest/turboshake.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/digest/xof_digest.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{encap_decap/encap_decap_bits.tentative.https.any.js => modern-algos/encap_decap/encap_decap_bits.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{encap_decap/encap_decap_keys.tentative.https.any.js => modern-algos/encap_decap/encap_decap_keys.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/encap_decap/hybrid_kem_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/encap_decap/ml_kem_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{encrypt_decrypt/aes_ocb.tentative.https.any.js => modern-algos/encrypt_decrypt/aes_ocb.https.any.js} (54%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/encrypt_decrypt/aes_ocb_fixtures.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/encrypt_decrypt/aes_ocb_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{encrypt_decrypt/chacha20_poly1305.tentative.https.any.js => modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js} (99%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_AES-OCB.https.any.js rename test/fixtures/wpt/WebCryptoAPI/{generateKey/failures_Hybrid-KEM.tentative.https.any.js => modern-algos/generateKey/failures_Hybrid-KEM.https.any.js} (50%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-DSA.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-KEM.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_chacha20_poly1305.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_kmac.https.any.js rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_AES-OCB.tentative.https.any.js => modern-algos/generateKey/successes_AES-OCB.https.any.js} (50%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_Hybrid-KEM.tentative.https.any.js => modern-algos/generateKey/successes_Hybrid-KEM.https.any.js} (57%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_ML-DSA.tentative.https.any.js => modern-algos/generateKey/successes_ML-DSA.https.any.js} (55%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_ML-KEM.tentative.https.any.js => modern-algos/generateKey/successes_ML-KEM.https.any.js} (55%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_chacha20_poly1305.tentative.https.any.js => modern-algos/generateKey/successes_chacha20_poly1305.https.any.js} (52%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_kmac.tentative.https.any.js => modern-algos/generateKey/successes_kmac.https.any.js} (52%) rename test/fixtures/wpt/WebCryptoAPI/{getPublicKey.tentative.https.any.js => modern-algos/getPublicKey.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{idlharness.tentative.https.any.js => modern-algos/idlharness.https.any.js} (67%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/AES-OCB_importKey.tentative.https.any.js => modern-algos/import_export/AES-OCB_importKey.https.any.js} (51%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/Argon2_importKey.tentative.https.any.js => modern-algos/import_export/Argon2_importKey.https.any.js} (60%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js => modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js} (54%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/Hybrid-KEM_importKey.tentative.https.any.js => modern-algos/import_export/Hybrid-KEM_importKey.https.any.js} (88%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/import_export/Hybrid-KEM_importKey_fixtures.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/KMAC_importKey.tentative.https.any.js => modern-algos/import_export/KMAC_importKey.https.any.js} (56%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/ML-DSA_importKey.tentative.https.any.js => modern-algos/import_export/ML-DSA_importKey.https.any.js} (87%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/import_export/ML-DSA_importKey_fixtures.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/ML-KEM_importKey.tentative.https.any.js => modern-algos/import_export/ML-KEM_importKey.https.any.js} (85%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/import_export/ML-KEM_importKey_fixtures.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/import_export/ml_importKey.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{import_export/raw_format_aliases.tentative.https.any.js => modern-algos/import_export/raw_format_aliases.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/aes-ocb.tentative.https.any.js => modern-algos/serialization/aes-ocb.https.any.js} (70%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/chacha20-poly1305.tentative.https.any.js => modern-algos/serialization/chacha20-poly1305.https.any.js} (71%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/hybridkem.tentative.https.window.js => modern-algos/serialization/hybridkem.https.window.js} (89%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/kmac.tentative.https.any.js => modern-algos/serialization/kmac.https.any.js} (77%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/mldsa.tentative.https.any.js => modern-algos/serialization/mldsa.https.any.js} (85%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/mlkem.tentative.https.any.js => modern-algos/serialization/mlkem.https.any.js} (89%) rename test/fixtures/wpt/WebCryptoAPI/{sign_verify/kmac.tentative.https.any.js => modern-algos/sign_verify/kmac.https.any.js} (65%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/sign_verify/kmac.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/sign_verify/kmac_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{sign_verify/mldsa.tentative.https.any.js => modern-algos/sign_verify/mldsa.https.any.js} (70%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/sign_verify/mldsa.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/sign_verify/mldsa_vectors.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{supports-modern.tentative.https.any.js => modern-algos/supports-modern.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{supports.tentative.https.any.js => modern-algos/supports.https.any.js} (99%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/util/mldsa_key_fixtures.js (100%) rename test/fixtures/wpt/WebCryptoAPI/{ => modern-algos}/util/supports.js (100%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/META.yml rename test/fixtures/wpt/WebCryptoAPI/{derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js => secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js} (63%) rename test/fixtures/wpt/WebCryptoAPI/{derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js => secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js} (63%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_Ed448.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_X448.https.any.js rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_Ed448.tentative.https.any.js => secure-curves/generateKey/successes_Ed448.https.any.js} (50%) rename test/fixtures/wpt/WebCryptoAPI/{generateKey/successes_X448.tentative.https.any.js => secure-curves/generateKey/successes_X448.https.any.js} (50%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/idlharness.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_Ed448.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_X448.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_X448.https.any.js rename test/fixtures/wpt/WebCryptoAPI/{serialization/ed448.tentative.https.any.js => secure-curves/serialization/ed448.https.any.js} (70%) rename test/fixtures/wpt/WebCryptoAPI/{serialization/x448.tentative.https.any.js => secure-curves/serialization/x448.https.any.js} (70%) create mode 100644 test/fixtures/wpt/WebCryptoAPI/secure-curves/sign_verify/eddsa_curve448.https.any.js delete mode 100644 test/fixtures/wpt/WebCryptoAPI/sign_verify/eddsa_curve448.tentative.https.any.js diff --git a/test/fixtures/wpt/WebCryptoAPI/README.md b/test/fixtures/wpt/WebCryptoAPI/README.md index 5546cf2b6f2a..51fcb4da2eae 100644 --- a/test/fixtures/wpt/WebCryptoAPI/README.md +++ b/test/fixtures/wpt/WebCryptoAPI/README.md @@ -1 +1,18 @@ -Directory for Crypto API tests +Tests for the Web Cryptography API are grouped by specification: + +- Tests for [Web Cryptography API Level 2](https://w3c.github.io/webcrypto/) + are in this directory's existing operation subdirectories and root files. +- Tests for [Modern Algorithms in the Web Cryptography API](https://wicg.github.io/webcrypto-modern-algos/) + are in `modern-algos/`, including `supports()`, `getPublicKey()`, and key format extensions. +- Tests for [Secure Curves in the Web Cryptography API](https://wicg.github.io/webcrypto-secure-curves/) + are in `secure-curves/`. Ed25519 and X25519 are part of the core specification; + Ed448 and X448 are covered by the secure curves specification. + +Each specification directory has a `META.yml` linking to its specification. +Helpers used across specifications remain in the shared operation directories +or `util/`; helpers specific to an extension are alongside that extension's tests. + +Use `.tentative` only for assertions not yet required by a specification or that +contradict a specification, as described in the [file naming guidelines](../docs/writing-tests/file-names.md). +An algorithm being defined in an extension specification does not by itself make +its tests tentative. diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_AES-OCB.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_AES-OCB.tentative.https.any.js deleted file mode 100644 index ef7c8c38e537..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_AES-OCB.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["AES-OCB"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Ed448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Ed448.tentative.https.any.js deleted file mode 100644 index 6ee388e40f76..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Ed448.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["Ed448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-DSA.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-DSA.tentative.https.any.js deleted file mode 100644 index d41636dea797..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-DSA.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-KEM.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-KEM.tentative.https.any.js deleted file mode 100644 index 0ece96944e7b..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_ML-KEM.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_X448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_X448.tentative.https.any.js deleted file mode 100644 index 26e12b972590..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_X448.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["X448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_chacha20_poly1305.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_chacha20_poly1305.tentative.https.any.js deleted file mode 100644 index 6ec0593a14b9..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_chacha20_poly1305.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["ChaCha20-Poly1305"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_kmac.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_kmac.tentative.https.any.js deleted file mode 100644 index 889c17e9c23b..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_kmac.tentative.https.any.js +++ /dev/null @@ -1,6 +0,0 @@ -// META: title=WebCryptoAPI: generateKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js -run_test(["KMAC128", "KMAC256"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_Ed448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_Ed448.tentative.https.any.js deleted file mode 100644 index 8498ce4ef8f3..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_Ed448.tentative.https.any.js +++ /dev/null @@ -1,10 +0,0 @@ -// META: title=WebCryptoAPI: importKey() for OKP keys -// META: timeout=long -// META: script=../util/helpers.js -// META: script=../util/okp_key_fixtures.js -// META: script=okp_importKey_fixtures.js -// META: script=okp_importKey.js - - -// Test importKey and exportKey for OKP algorithms. -runTests("Ed448"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_X448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_X448.tentative.https.any.js deleted file mode 100644 index 09361ed9b8d6..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_X448.tentative.https.any.js +++ /dev/null @@ -1,10 +0,0 @@ -// META: title=WebCryptoAPI: importKey() for OKP keys -// META: timeout=long -// META: script=../util/helpers.js -// META: script=../util/okp_key_fixtures.js -// META: script=okp_importKey_fixtures.js -// META: script=okp_importKey.js - - -// Test importKey and exportKey for OKP algorithms. -runTests("X448"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_Ed448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_Ed448.tentative.https.any.js deleted file mode 100644 index 726d5c1e3772..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_Ed448.tentative.https.any.js +++ /dev/null @@ -1,9 +0,0 @@ -// META: title=WebCryptoAPI: importKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=../util/okp_key_fixtures.js -// META: script=okp_importKey_failures_fixtures.js -// META: script=importKey_failures.js - - -run_test(["Ed448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_X448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_X448.tentative.https.any.js deleted file mode 100644 index 2b575d7ab4d7..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/okp_importKey_failures_X448.tentative.https.any.js +++ /dev/null @@ -1,9 +0,0 @@ -// META: title=WebCryptoAPI: importKey() for Failures -// META: timeout=long -// META: script=../util/helpers.js -// META: script=../util/okp_key_fixtures.js -// META: script=okp_importKey_failures_fixtures.js -// META: script=importKey_failures.js - - -run_test(["X448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/META.yml b/test/fixtures/wpt/WebCryptoAPI/modern-algos/META.yml new file mode 100644 index 000000000000..78c9d066de3e --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/META.yml @@ -0,0 +1 @@ +spec: https://wicg.github.io/webcrypto-modern-algos/ diff --git a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2.https.any.js similarity index 85% rename from test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2.https.any.js index 9422c39c958a..8ddbac5960ec 100644 --- a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: deriveBits() Using Argon2 // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js // META: script=argon2_vectors.js // META: script=argon2.js diff --git a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2.js diff --git a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/argon2_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/derive_bits_keys/argon2_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/digest/cshake.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/cshake.https.any.js similarity index 98% rename from test/fixtures/wpt/WebCryptoAPI/digest/cshake.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/cshake.https.any.js index 1bf78f581154..58b5378a8520 100644 --- a/test/fixtures/wpt/WebCryptoAPI/digest/cshake.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/cshake.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: digest() cSHAKE algorithms -// META: script=../util/helpers.js -// META: script=digest_test_data.js -// META: script=digest.js +// META: script=../../util/helpers.js +// META: script=../../digest/digest_test_data.js +// META: script=../../digest/digest.js // META: timeout=long var subtle = crypto.subtle; // Change to test prefixed implementations diff --git a/test/fixtures/wpt/WebCryptoAPI/digest/kangarootwelve.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/kangarootwelve.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/digest/kangarootwelve.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/kangarootwelve.https.any.js index 0e38eb0542ad..a3d79a1d9c46 100644 --- a/test/fixtures/wpt/WebCryptoAPI/digest/kangarootwelve.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/kangarootwelve.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCryptoAPI: digest() KangarooTwelve algorithms -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=xof_digest.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/digest/sha3.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/sha3.https.any.js similarity index 96% rename from test/fixtures/wpt/WebCryptoAPI/digest/sha3.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/sha3.https.any.js index a6cafbb639f8..ea44080aac5e 100644 --- a/test/fixtures/wpt/WebCryptoAPI/digest/sha3.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/sha3.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: digest() SHA-3 algorithms -// META: script=../util/helpers.js -// META: script=digest_test_data.js -// META: script=digest.js +// META: script=../../util/helpers.js +// META: script=../../digest/digest_test_data.js +// META: script=../../digest/digest.js // META: timeout=long var subtle = crypto.subtle; // Change to test prefixed implementations diff --git a/test/fixtures/wpt/WebCryptoAPI/digest/turboshake.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/turboshake.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/digest/turboshake.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/turboshake.https.any.js index 356e6987956c..9886506d9865 100644 --- a/test/fixtures/wpt/WebCryptoAPI/digest/turboshake.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/turboshake.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCryptoAPI: digest() TurboSHAKE algorithms -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=xof_digest.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/digest/xof_digest.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/xof_digest.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/digest/xof_digest.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/digest/xof_digest.js diff --git a/test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_bits.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_bits.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_bits.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_bits.https.any.js index c0afb698e0a2..df6626aeb7bf 100644 --- a/test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_bits.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_bits.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCryptoAPI: KEM encapsulateBits() and decapsulateBits() tests -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=ml_kem_vectors.js // META: script=hybrid_kem_vectors.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_keys.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_keys.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_keys.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_keys.https.any.js index e978fe497e63..364183bc2eb5 100644 --- a/test/fixtures/wpt/WebCryptoAPI/encap_decap/encap_decap_keys.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/encap_decap_keys.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCryptoAPI: KEM encapsulateKey() and decapsulateKey() tests -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=ml_kem_vectors.js // META: script=hybrid_kem_vectors.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/encap_decap/hybrid_kem_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/hybrid_kem_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/encap_decap/hybrid_kem_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/hybrid_kem_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/encap_decap/ml_kem_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/ml_kem_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/encap_decap/ml_kem_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encap_decap/ml_kem_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb.https.any.js similarity index 54% rename from test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb.https.any.js index e6a6246074c1..bc0085719abe 100644 --- a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb.https.any.js @@ -1,9 +1,9 @@ // META: title=WebCryptoAPI: encrypt() Using AES-OCB w/ 120-bit iv -// META: script=../util/helpers.js -// META: script=aes_common_fixtures.js +// META: script=../../util/helpers.js +// META: script=../../encrypt_decrypt/aes_common_fixtures.js // META: script=aes_ocb_fixtures.js // META: script=aes_ocb_vectors.js -// META: script=aes.js +// META: script=../../encrypt_decrypt/aes.js // META: timeout=long run_test(); diff --git a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb_fixtures.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb_fixtures.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb_fixtures.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb_fixtures.js diff --git a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/aes_ocb_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/aes_ocb_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/chacha20_poly1305.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/chacha20_poly1305.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js index d03f7c030999..85bac4204159 100644 --- a/test/fixtures/wpt/WebCryptoAPI/encrypt_decrypt/chacha20_poly1305.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: encrypt()/decrypt() ChaCha20-Poly1305 // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js var subtle = crypto.subtle; // Change to test prefixed implementations diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_AES-OCB.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_AES-OCB.https.any.js new file mode 100644 index 000000000000..faf99c3b5267 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_AES-OCB.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["AES-OCB"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Hybrid-KEM.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_Hybrid-KEM.https.any.js similarity index 50% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Hybrid-KEM.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_Hybrid-KEM.https.any.js index 40c69270c9a9..2032ced48764 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/failures_Hybrid-KEM.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_Hybrid-KEM.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: generateKey() for Failures // META: timeout=long -// META: script=../util/helpers.js -// META: script=algorithm_registry.js -// META: script=failures.js +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js run_test(["MLKEM768-P256", "MLKEM768-X25519", "MLKEM1024-P384"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-DSA.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-DSA.https.any.js new file mode 100644 index 000000000000..474a2cf8c8b8 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-DSA.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-KEM.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-KEM.https.any.js new file mode 100644 index 000000000000..d7f62ef19b9d --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_ML-KEM.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_chacha20_poly1305.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_chacha20_poly1305.https.any.js new file mode 100644 index 000000000000..8026065f8d7e --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_chacha20_poly1305.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["ChaCha20-Poly1305"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_kmac.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_kmac.https.any.js new file mode 100644 index 000000000000..0ba070829481 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/failures_kmac.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["KMAC128", "KMAC256"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_AES-OCB.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_AES-OCB.https.any.js similarity index 50% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_AES-OCB.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_AES-OCB.https.any.js index c87f875f4b1e..46ebf52bef94 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_AES-OCB.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_AES-OCB.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["AES-OCB"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Hybrid-KEM.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_Hybrid-KEM.https.any.js similarity index 57% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Hybrid-KEM.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_Hybrid-KEM.https.any.js index bca75d4b6d71..39919c174e63 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Hybrid-KEM.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_Hybrid-KEM.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["MLKEM768-P256", "MLKEM768-X25519", "MLKEM1024-P384"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-DSA.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-DSA.https.any.js similarity index 55% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-DSA.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-DSA.https.any.js index 6c81b193167c..c33f9f38b245 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-DSA.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-DSA.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-KEM.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-KEM.https.any.js similarity index 55% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-KEM.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-KEM.https.any.js index f41b5c34cdb5..1353d25cb136 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_ML-KEM.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_ML-KEM.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_chacha20_poly1305.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_chacha20_poly1305.https.any.js similarity index 52% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_chacha20_poly1305.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_chacha20_poly1305.https.any.js index 2f3efebb6bc2..c79dddb8d04a 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_chacha20_poly1305.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_chacha20_poly1305.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["ChaCha20-Poly1305"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_kmac.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_kmac.https.any.js similarity index 52% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_kmac.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_kmac.https.any.js index 8276fa9058c4..7f6120b4f89f 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_kmac.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/generateKey/successes_kmac.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["KMAC128", "KMAC256"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/getPublicKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/getPublicKey.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/getPublicKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/getPublicKey.https.any.js index c85d2a9e02ba..e5537c900ddd 100644 --- a/test/fixtures/wpt/WebCryptoAPI/getPublicKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/getPublicKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: getPublicKey() method // META: timeout=long -// META: script=util/helpers.js +// META: script=../util/helpers.js "use strict"; diff --git a/test/fixtures/wpt/WebCryptoAPI/idlharness.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/idlharness.https.any.js similarity index 67% rename from test/fixtures/wpt/WebCryptoAPI/idlharness.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/idlharness.https.any.js index 150228aef034..5da45f3d5765 100644 --- a/test/fixtures/wpt/WebCryptoAPI/idlharness.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/idlharness.https.any.js @@ -2,12 +2,11 @@ // META: script=/resources/idlharness.js // META: timeout=long -// https://wicg.github.io/webcrypto-secure-curves/ // https://wicg.github.io/webcrypto-modern-algos/ idl_test( - ['webcrypto', 'webcrypto-secure-curves', 'webcrypto-modern-algos'], - ['html', 'dom'], + ['webcrypto-modern-algos'], + ['webcrypto', 'html', 'dom'], idl_array => { idl_array.add_objects({ Crypto: ['crypto'], diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/AES-OCB_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/AES-OCB_importKey.https.any.js similarity index 51% rename from test/fixtures/wpt/WebCryptoAPI/import_export/AES-OCB_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/AES-OCB_importKey.https.any.js index 7fa028aa5a03..43ad1d5a5301 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/AES-OCB_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/AES-OCB_importKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: importKey() for symmetric keys // META: timeout=long -// META: script=../util/helpers.js -// META: script=symmetric_importKey.js +// META: script=../../util/helpers.js +// META: script=../../import_export/symmetric_importKey.js runTests("AES-OCB"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/Argon2_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Argon2_importKey.https.any.js similarity index 60% rename from test/fixtures/wpt/WebCryptoAPI/import_export/Argon2_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Argon2_importKey.https.any.js index a3edc3896308..aad42a55adbd 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/Argon2_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Argon2_importKey.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: importKey() for symmetric keys // META: timeout=long -// META: script=../util/helpers.js -// META: script=symmetric_importKey.js +// META: script=../../util/helpers.js +// META: script=../../import_export/symmetric_importKey.js runTests("Argon2i"); runTests("Argon2d"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js similarity index 54% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js index 620f22d4aecc..d478af3e51d9 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: importKey() for symmetric keys // META: timeout=long -// META: script=../util/helpers.js -// META: script=symmetric_importKey.js +// META: script=../../util/helpers.js +// META: script=../../import_export/symmetric_importKey.js runTests("ChaCha20-Poly1305"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/Hybrid-KEM_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Hybrid-KEM_importKey.https.any.js similarity index 88% rename from test/fixtures/wpt/WebCryptoAPI/import_export/Hybrid-KEM_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Hybrid-KEM_importKey.https.any.js index 3227434ed449..a709f5e7fa6a 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/Hybrid-KEM_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Hybrid-KEM_importKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: importKey() for Hybrid KEM keys // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=Hybrid-KEM_importKey_fixtures.js // META: script=ml_importKey.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/Hybrid-KEM_importKey_fixtures.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Hybrid-KEM_importKey_fixtures.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/import_export/Hybrid-KEM_importKey_fixtures.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/Hybrid-KEM_importKey_fixtures.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/KMAC_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/KMAC_importKey.https.any.js similarity index 56% rename from test/fixtures/wpt/WebCryptoAPI/import_export/KMAC_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/KMAC_importKey.https.any.js index 83995bca37ac..c3aacbeed6e3 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/KMAC_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/KMAC_importKey.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: importKey() for symmetric keys // META: timeout=long -// META: script=../util/helpers.js -// META: script=symmetric_importKey.js +// META: script=../../util/helpers.js +// META: script=../../import_export/symmetric_importKey.js runTests("KMAC128"); runTests("KMAC256"); diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-DSA_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-DSA_importKey.https.any.js similarity index 87% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ML-DSA_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-DSA_importKey.https.any.js index 02f745d71c28..96d17f641b1c 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-DSA_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-DSA_importKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: importKey() for ML-DSA keys // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=../util/mldsa_key_fixtures.js // META: script=ML-DSA_importKey_fixtures.js // META: script=ml_importKey.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-DSA_importKey_fixtures.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-DSA_importKey_fixtures.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ML-DSA_importKey_fixtures.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-DSA_importKey_fixtures.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-KEM_importKey.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-KEM_importKey.https.any.js similarity index 85% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ML-KEM_importKey.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-KEM_importKey.https.any.js index 11d80c76bc55..7766a2badb30 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-KEM_importKey.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-KEM_importKey.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: importKey() for ML-KEM keys // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=ML-KEM_importKey_fixtures.js // META: script=ml_importKey.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ML-KEM_importKey_fixtures.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-KEM_importKey_fixtures.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ML-KEM_importKey_fixtures.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ML-KEM_importKey_fixtures.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/ml_importKey.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ml_importKey.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/import_export/ml_importKey.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/ml_importKey.js diff --git a/test/fixtures/wpt/WebCryptoAPI/import_export/raw_format_aliases.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/raw_format_aliases.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/import_export/raw_format_aliases.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/raw_format_aliases.https.any.js index 646ae1b0de74..e09526e75d3a 100644 --- a/test/fixtures/wpt/WebCryptoAPI/import_export/raw_format_aliases.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/import_export/raw_format_aliases.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: raw-secret and raw-public importKey() format aliases // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // For all existing symmetric algorithms in WebCrypto, "raw-secret" acts as an // alias of "raw". For all existing asymmetric algorithms in WebCrypto, diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/aes-ocb.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/aes-ocb.https.any.js similarity index 70% rename from test/fixtures/wpt/WebCryptoAPI/serialization/aes-ocb.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/aes-ocb.https.any.js index 33b814410c3f..1d63ea9ef8e5 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/aes-ocb.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/aes-ocb.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'AES-OCB', diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/chacha20-poly1305.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/chacha20-poly1305.https.any.js similarity index 71% rename from test/fixtures/wpt/WebCryptoAPI/serialization/chacha20-poly1305.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/chacha20-poly1305.https.any.js index aaaa24a0b662..6b2357f51ce2 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/chacha20-poly1305.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/chacha20-poly1305.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'ChaCha20-Poly1305', diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/hybridkem.tentative.https.window.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/hybridkem.https.window.js similarity index 89% rename from test/fixtures/wpt/WebCryptoAPI/serialization/hybridkem.tentative.https.window.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/hybridkem.https.window.js index 465f86df55a8..ae41250e05f6 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/hybridkem.tentative.https.window.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/hybridkem.https.window.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: Hybrid KEM CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'MLKEM768-P256', diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/kmac.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/kmac.https.any.js similarity index 77% rename from test/fixtures/wpt/WebCryptoAPI/serialization/kmac.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/kmac.https.any.js index 645d16bec776..80913886e387 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/kmac.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/kmac.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'KMAC128', diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/mldsa.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mldsa.https.any.js similarity index 85% rename from test/fixtures/wpt/WebCryptoAPI/serialization/mldsa.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mldsa.https.any.js index 3f61248b3d9e..7e0c076496c1 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/mldsa.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mldsa.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/mlkem.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mlkem.https.any.js similarity index 89% rename from test/fixtures/wpt/WebCryptoAPI/serialization/mlkem.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mlkem.https.any.js index 62a210f0cda2..7437d96f112e 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/mlkem.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/serialization/mlkem.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'ML-KEM-512', diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac.https.any.js similarity index 65% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac.https.any.js index 0a57ba7a3f80..db28d0cff5ec 100644 --- a/test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: sign() and verify() Using KMAC -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=kmac_vectors.js -// META: script=mac.js +// META: script=../../sign_verify/mac.js // META: script=kmac.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac.js diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/kmac_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/kmac_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa.https.any.js similarity index 70% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa.https.any.js index 253cc85e258f..db071762f908 100644 --- a/test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa.https.any.js @@ -1,8 +1,8 @@ // META: title=WebCryptoAPI: sign() and verify() Using ML-DSA -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=../util/mldsa_key_fixtures.js // META: script=mldsa_vectors.js -// META: script=signature.js +// META: script=../../sign_verify/signature.js // META: script=mldsa.js // META: timeout=long diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa.js diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa_vectors.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa_vectors.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/sign_verify/mldsa_vectors.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/sign_verify/mldsa_vectors.js diff --git a/test/fixtures/wpt/WebCryptoAPI/supports-modern.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/supports-modern.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/supports-modern.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/supports-modern.https.any.js index 5c4699dcfb7f..a929468ed05b 100644 --- a/test/fixtures/wpt/WebCryptoAPI/supports-modern.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/supports-modern.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCrypto API: supports method tests for algorithms in https://wicg.github.io/webcrypto-modern-algos/ -// META: script=util/helpers.js +// META: script=../util/helpers.js // META: script=util/supports.js 'use strict'; diff --git a/test/fixtures/wpt/WebCryptoAPI/supports.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/supports.https.any.js similarity index 99% rename from test/fixtures/wpt/WebCryptoAPI/supports.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/supports.https.any.js index a74e49e69d17..a07684cbbe23 100644 --- a/test/fixtures/wpt/WebCryptoAPI/supports.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/modern-algos/supports.https.any.js @@ -1,5 +1,5 @@ // META: title=WebCrypto API: supports method tests -// META: script=util/helpers.js +// META: script=../util/helpers.js // META: script=util/supports.js 'use strict'; diff --git a/test/fixtures/wpt/WebCryptoAPI/util/mldsa_key_fixtures.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/util/mldsa_key_fixtures.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/util/mldsa_key_fixtures.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/util/mldsa_key_fixtures.js diff --git a/test/fixtures/wpt/WebCryptoAPI/util/supports.js b/test/fixtures/wpt/WebCryptoAPI/modern-algos/util/supports.js similarity index 100% rename from test/fixtures/wpt/WebCryptoAPI/util/supports.js rename to test/fixtures/wpt/WebCryptoAPI/modern-algos/util/supports.js diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/META.yml b/test/fixtures/wpt/WebCryptoAPI/secure-curves/META.yml new file mode 100644 index 000000000000..e5c16d76a3dc --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/META.yml @@ -0,0 +1 @@ +spec: https://wicg.github.io/webcrypto-secure-curves/ diff --git a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js similarity index 63% rename from test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js index cda5ba87fba0..35fc0210362d 100644 --- a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js @@ -1,9 +1,9 @@ // META: title=WebCryptoAPI: deriveKey() Using ECDH with CFRG Elliptic Curves -// META: script=../util/helpers.js -// META: script=cfrg_curves_bits_fixtures.js -// META: script=derive.js -// META: script=cfrg_curves.js -// META: script=cfrg_curves_bits.js +// META: script=../../util/helpers.js +// META: script=../../derive_bits_keys/cfrg_curves_bits_fixtures.js +// META: script=../../derive_bits_keys/derive.js +// META: script=../../derive_bits_keys/cfrg_curves.js +// META: script=../../derive_bits_keys/cfrg_curves_bits.js // Define subtests from a `promise_test` to ensure the harness does not // complete before the subtests are available. `explicit_done` cannot be used diff --git a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js similarity index 63% rename from test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js index 38a5ce1db5b2..595b04e3faf2 100644 --- a/test/fixtures/wpt/WebCryptoAPI/derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js @@ -1,9 +1,9 @@ // META: title=WebCryptoAPI: deriveKey() Using ECDH with CFRG Elliptic Curves -// META: script=../util/helpers.js -// META: script=cfrg_curves_bits_fixtures.js -// META: script=derive.js -// META: script=cfrg_curves.js -// META: script=cfrg_curves_keys.js +// META: script=../../util/helpers.js +// META: script=../../derive_bits_keys/cfrg_curves_bits_fixtures.js +// META: script=../../derive_bits_keys/derive.js +// META: script=../../derive_bits_keys/cfrg_curves.js +// META: script=../../derive_bits_keys/cfrg_curves_keys.js // Define subtests from a `promise_test` to ensure the harness does not // complete before the subtests are available. `explicit_done` cannot be used diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_Ed448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_Ed448.https.any.js new file mode 100644 index 000000000000..b129b88289a2 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_Ed448.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["Ed448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_X448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_X448.https.any.js new file mode 100644 index 000000000000..8293786cc309 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/failures_X448.https.any.js @@ -0,0 +1,6 @@ +// META: title=WebCryptoAPI: generateKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/failures.js +run_test(["X448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Ed448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_Ed448.https.any.js similarity index 50% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Ed448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_Ed448.https.any.js index d017170ca1ad..c274ffc6b3ed 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_Ed448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_Ed448.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["Ed448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_X448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_X448.https.any.js similarity index 50% rename from test/fixtures/wpt/WebCryptoAPI/generateKey/successes_X448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_X448.https.any.js index f1475c16bbd2..c5ca8f3c968e 100644 --- a/test/fixtures/wpt/WebCryptoAPI/generateKey/successes_X448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/generateKey/successes_X448.https.any.js @@ -1,7 +1,7 @@ // META: title=WebCryptoAPI: generateKey() Successful Calls // META: timeout=long -// META: script=../util/helpers.js +// META: script=../../util/helpers.js // META: script=/common/subset-tests.js -// META: script=algorithm_registry.js -// META: script=successes.js +// META: script=../../generateKey/algorithm_registry.js +// META: script=../../generateKey/successes.js run_test(["X448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/idlharness.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/idlharness.https.any.js new file mode 100644 index 000000000000..6b90dd4089c2 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/idlharness.https.any.js @@ -0,0 +1,10 @@ +// META: script=/resources/WebIDLParser.js +// META: script=/resources/idlharness.js +// META: timeout=long + +// https://wicg.github.io/webcrypto-secure-curves/ + +idl_test( + ['webcrypto-secure-curves'], + ['webcrypto'] +); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_Ed448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_Ed448.https.any.js new file mode 100644 index 000000000000..d35b341d1323 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_Ed448.https.any.js @@ -0,0 +1,10 @@ +// META: title=WebCryptoAPI: importKey() for OKP keys +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../util/okp_key_fixtures.js +// META: script=../../import_export/okp_importKey_fixtures.js +// META: script=../../import_export/okp_importKey.js + + +// Test importKey and exportKey for OKP algorithms. +runTests("Ed448"); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_X448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_X448.https.any.js new file mode 100644 index 000000000000..c2319535a40b --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_X448.https.any.js @@ -0,0 +1,10 @@ +// META: title=WebCryptoAPI: importKey() for OKP keys +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../util/okp_key_fixtures.js +// META: script=../../import_export/okp_importKey_fixtures.js +// META: script=../../import_export/okp_importKey.js + + +// Test importKey and exportKey for OKP algorithms. +runTests("X448"); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js new file mode 100644 index 000000000000..2d33034e9ba7 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js @@ -0,0 +1,9 @@ +// META: title=WebCryptoAPI: importKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../util/okp_key_fixtures.js +// META: script=../../import_export/okp_importKey_failures_fixtures.js +// META: script=../../import_export/importKey_failures.js + + +run_test(["Ed448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_X448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_X448.https.any.js new file mode 100644 index 000000000000..1cd1753380ff --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_X448.https.any.js @@ -0,0 +1,9 @@ +// META: title=WebCryptoAPI: importKey() for Failures +// META: timeout=long +// META: script=../../util/helpers.js +// META: script=../../util/okp_key_fixtures.js +// META: script=../../import_export/okp_importKey_failures_fixtures.js +// META: script=../../import_export/importKey_failures.js + + +run_test(["X448"]); diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/ed448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/ed448.https.any.js similarity index 70% rename from test/fixtures/wpt/WebCryptoAPI/serialization/ed448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/ed448.https.any.js index 4abe56285689..f1fdf785ce43 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/ed448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/ed448.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'Ed448', diff --git a/test/fixtures/wpt/WebCryptoAPI/serialization/x448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/x448.https.any.js similarity index 70% rename from test/fixtures/wpt/WebCryptoAPI/serialization/x448.tentative.https.any.js rename to test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/x448.https.any.js index cafc00144a3c..05c2e17b63ff 100644 --- a/test/fixtures/wpt/WebCryptoAPI/serialization/x448.tentative.https.any.js +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/serialization/x448.https.any.js @@ -1,6 +1,6 @@ // META: title=WebCryptoAPI: CryptoKey serialization -// META: script=../util/helpers.js -// META: script=serialization.js +// META: script=../../util/helpers.js +// META: script=../../serialization/serialization.js run_test([ { name: 'X448', diff --git a/test/fixtures/wpt/WebCryptoAPI/secure-curves/sign_verify/eddsa_curve448.https.any.js b/test/fixtures/wpt/WebCryptoAPI/secure-curves/sign_verify/eddsa_curve448.https.any.js new file mode 100644 index 000000000000..b7e6b8322519 --- /dev/null +++ b/test/fixtures/wpt/WebCryptoAPI/secure-curves/sign_verify/eddsa_curve448.https.any.js @@ -0,0 +1,8 @@ +// META: title=WebCryptoAPI: sign() and verify() Using EdDSA +// META: script=../../util/helpers.js +// META: script=../../sign_verify/eddsa_vectors.js +// META: script=../../sign_verify/signature.js +// META: script=../../sign_verify/eddsa.js +// META: timeout=long + +run_test("Ed448"); diff --git a/test/fixtures/wpt/WebCryptoAPI/sign_verify/eddsa_curve448.tentative.https.any.js b/test/fixtures/wpt/WebCryptoAPI/sign_verify/eddsa_curve448.tentative.https.any.js deleted file mode 100644 index 8dd43dfeb172..000000000000 --- a/test/fixtures/wpt/WebCryptoAPI/sign_verify/eddsa_curve448.tentative.https.any.js +++ /dev/null @@ -1,8 +0,0 @@ -// META: title=WebCryptoAPI: sign() and verify() Using EdDSA -// META: script=../util/helpers.js -// META: script=eddsa_vectors.js -// META: script=signature.js -// META: script=eddsa.js -// META: timeout=long - -run_test("Ed448"); diff --git a/test/fixtures/wpt/versions.json b/test/fixtures/wpt/versions.json index 33c38735174e..2d12ad453602 100644 --- a/test/fixtures/wpt/versions.json +++ b/test/fixtures/wpt/versions.json @@ -100,7 +100,7 @@ "path": "web-locks" }, "WebCryptoAPI": { - "commit": "3127c3a492e63578ed2bf76e3d4bda805183b5a3", + "commit": "b638c093cd3e1849715130bcd99041f79980bb12", "path": "WebCryptoAPI" }, "webidl": { From 29085f180daad6c808bbe66dcf99717e644e0cd9 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Mon, 12 Oct 2026 22:58:22 +0200 Subject: [PATCH 2/3] fixup! test: update WPT for WebCryptoAPI to b638c093cd --- test/wpt/status/WebCryptoAPI.cjs | 174 +++++++++++++++---------------- 1 file changed, 87 insertions(+), 87 deletions(-) diff --git a/test/wpt/status/WebCryptoAPI.cjs b/test/wpt/status/WebCryptoAPI.cjs index e2225c52d734..606cbbac34d6 100644 --- a/test/wpt/status/WebCryptoAPI.cjs +++ b/test/wpt/status/WebCryptoAPI.cjs @@ -32,99 +32,99 @@ function skipSubtests(...entries) { if (!hasOpenSSL(3, 0)) { skip( - 'encrypt_decrypt/aes_ocb.tentative.https.any.js', - 'generateKey/failures_AES-OCB.tentative.https.any.js', - 'generateKey/failures_kmac.tentative.https.any.js', - 'generateKey/successes_AES-OCB.tentative.https.any.js', - 'generateKey/successes_kmac.tentative.https.any.js', - 'import_export/AES-OCB_importKey.tentative.https.any.js', - 'import_export/KMAC_importKey.tentative.https.any.js', - 'serialization/aes-ocb.tentative.https.any.js', - 'serialization/kmac.tentative.https.any.js', - 'sign_verify/kmac.tentative.https.any.js'); + 'modern-algos/encrypt_decrypt/aes_ocb.https.any.js', + 'modern-algos/generateKey/failures_AES-OCB.https.any.js', + 'modern-algos/generateKey/failures_kmac.https.any.js', + 'modern-algos/generateKey/successes_AES-OCB.https.any.js', + 'modern-algos/generateKey/successes_kmac.https.any.js', + 'modern-algos/import_export/AES-OCB_importKey.https.any.js', + 'modern-algos/import_export/KMAC_importKey.https.any.js', + 'modern-algos/serialization/aes-ocb.https.any.js', + 'modern-algos/serialization/kmac.https.any.js', + 'modern-algos/sign_verify/kmac.https.any.js'); } if (!hasOpenSSL(3, 2) || hasFIPS(3)) { skip( - 'derive_bits_keys/argon2.tentative.https.any.js', - 'import_export/Argon2_importKey.tentative.https.any.js'); + 'modern-algos/derive_bits_keys/argon2.https.any.js', + 'modern-algos/import_export/Argon2_importKey.https.any.js'); } if (!hasOpenSSL(3, 5) && !isBoringSSL) { skip( - 'encap_decap/encap_decap_bits.tentative.https.any.js', - 'encap_decap/encap_decap_keys.tentative.https.any.js', - 'generateKey/failures_Hybrid-KEM.tentative.https.any.js', - 'generateKey/failures_ML-DSA.tentative.https.any.js', - 'generateKey/failures_ML-KEM.tentative.https.any.js', - 'generateKey/successes_Hybrid-KEM.tentative.https.any.js', - 'generateKey/successes_ML-DSA.tentative.https.any.js', - 'generateKey/successes_ML-KEM.tentative.https.any.js', - 'import_export/Hybrid-KEM_importKey.tentative.https.any.js', - 'import_export/ML-DSA_importKey.tentative.https.any.js', - 'import_export/ML-KEM_importKey.tentative.https.any.js', - 'serialization/hybridkem.tentative.https.window.js', - 'serialization/mldsa.tentative.https.any.js', - 'serialization/mlkem.tentative.https.any.js', - 'sign_verify/mldsa.tentative.https.any.js'); + 'modern-algos/encap_decap/encap_decap_bits.https.any.js', + 'modern-algos/encap_decap/encap_decap_keys.https.any.js', + 'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js', + 'modern-algos/generateKey/failures_ML-DSA.https.any.js', + 'modern-algos/generateKey/failures_ML-KEM.https.any.js', + 'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js', + 'modern-algos/generateKey/successes_ML-DSA.https.any.js', + 'modern-algos/generateKey/successes_ML-KEM.https.any.js', + 'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js', + 'modern-algos/import_export/ML-DSA_importKey.https.any.js', + 'modern-algos/import_export/ML-KEM_importKey.https.any.js', + 'modern-algos/serialization/hybridkem.https.window.js', + 'modern-algos/serialization/mldsa.https.any.js', + 'modern-algos/serialization/mlkem.https.any.js', + 'modern-algos/sign_verify/mldsa.https.any.js'); skipSubtests( - ['getPublicKey.tentative.https.any.js', /ml-?(?:kem|dsa)/i], + ['modern-algos/getPublicKey.https.any.js', /ml-?(?:kem|dsa)/i], [ - 'supports-modern.tentative.https.any.js', + 'modern-algos/supports-modern.https.any.js', /(?:ml-?(?:kem|dsa)|(?:en|de)capsulateKey)/i, ]); } if (isBoringSSL) { skip( - 'derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js', - 'derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js', - 'digest/cshake.tentative.https.any.js', - 'digest/sha3.tentative.https.any.js', - 'generateKey/failures_Ed448.tentative.https.any.js', - 'generateKey/failures_Hybrid-KEM.tentative.https.any.js', - 'generateKey/failures_X448.tentative.https.any.js', - 'generateKey/successes_Ed448.tentative.https.any.js', - 'generateKey/successes_Hybrid-KEM.tentative.https.any.js', - 'generateKey/successes_X448.tentative.https.any.js', - 'import_export/Hybrid-KEM_importKey.tentative.https.any.js', - 'import_export/okp_importKey_Ed448.tentative.https.any.js', - 'import_export/okp_importKey_failures_Ed448.tentative.https.any.js', - 'import_export/okp_importKey_failures_X448.tentative.https.any.js', - 'import_export/okp_importKey_X448.tentative.https.any.js', - 'serialization/ed448.tentative.https.any.js', - 'serialization/hybridkem.tentative.https.window.js', - 'serialization/x448.tentative.https.any.js', - 'sign_verify/eddsa_curve448.tentative.https.any.js'); + 'secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js', + 'secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js', + 'modern-algos/digest/cshake.https.any.js', + 'modern-algos/digest/sha3.https.any.js', + 'secure-curves/generateKey/failures_Ed448.https.any.js', + 'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js', + 'secure-curves/generateKey/failures_X448.https.any.js', + 'secure-curves/generateKey/successes_Ed448.https.any.js', + 'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js', + 'secure-curves/generateKey/successes_X448.https.any.js', + 'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js', + 'secure-curves/import_export/okp_importKey_Ed448.https.any.js', + 'secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js', + 'secure-curves/import_export/okp_importKey_failures_X448.https.any.js', + 'secure-curves/import_export/okp_importKey_X448.https.any.js', + 'secure-curves/serialization/ed448.https.any.js', + 'modern-algos/serialization/hybridkem.https.window.js', + 'secure-curves/serialization/x448.https.any.js', + 'secure-curves/sign_verify/eddsa_curve448.https.any.js'); skipSubtests( - ['encap_decap/encap_decap_bits.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i], - ['encap_decap/encap_decap_keys.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i], - ['generateKey/failures_ML-KEM.tentative.https.any.js', /ml-kem-512/i], - ['generateKey/successes_ML-KEM.tentative.https.any.js', /ml-kem-512/i], - ['getPublicKey.tentative.https.any.js', /(?:ed448|x448|ml-kem-512|mlkem)/i], - ['import_export/ML-KEM_importKey.tentative.https.any.js', /ml-kem-512/i], - ['serialization/mlkem.tentative.https.any.js', /ml-kem-512/i], - ['supports-modern.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i]); + ['modern-algos/encap_decap/encap_decap_bits.https.any.js', /(?:ml-kem-512|mlkem)/i], + ['modern-algos/encap_decap/encap_decap_keys.https.any.js', /(?:ml-kem-512|mlkem)/i], + ['modern-algos/generateKey/failures_ML-KEM.https.any.js', /ml-kem-512/i], + ['modern-algos/generateKey/successes_ML-KEM.https.any.js', /ml-kem-512/i], + ['modern-algos/getPublicKey.https.any.js', /(?:ed448|x448|ml-kem-512|mlkem)/i], + ['modern-algos/import_export/ML-KEM_importKey.https.any.js', /ml-kem-512/i], + ['modern-algos/serialization/mlkem.https.any.js', /ml-kem-512/i], + ['modern-algos/supports-modern.https.any.js', /(?:ml-kem-512|mlkem)/i]); } if (hasFIPS(3)) { skip( - 'encrypt_decrypt/aes_ocb.tentative.https.any.js', - 'encrypt_decrypt/chacha20_poly1305.tentative.https.any.js', - 'generateKey/failures_AES-OCB.tentative.https.any.js', - 'generateKey/failures_chacha20_poly1305.tentative.https.any.js', - 'generateKey/successes_AES-OCB.tentative.https.any.js', - 'generateKey/successes_chacha20_poly1305.tentative.https.any.js', - 'import_export/AES-OCB_importKey.tentative.https.any.js', - 'import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js', - 'serialization/aes-ocb.tentative.https.any.js', - 'serialization/chacha20-poly1305.tentative.https.any.js'); + 'modern-algos/encrypt_decrypt/aes_ocb.https.any.js', + 'modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js', + 'modern-algos/generateKey/failures_AES-OCB.https.any.js', + 'modern-algos/generateKey/failures_chacha20_poly1305.https.any.js', + 'modern-algos/generateKey/successes_AES-OCB.https.any.js', + 'modern-algos/generateKey/successes_chacha20_poly1305.https.any.js', + 'modern-algos/import_export/AES-OCB_importKey.https.any.js', + 'modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js', + 'modern-algos/serialization/aes-ocb.https.any.js', + 'modern-algos/serialization/chacha20-poly1305.https.any.js'); skipSubtests( [ - 'supports-modern.tentative.https.any.js', + 'modern-algos/supports-modern.https.any.js', /(?:ChaCha20-Poly1305|^supports returns (?:true|false) for algorithm objects with (?:valid|invalid) parameters$)/, ], [ @@ -135,8 +135,8 @@ if (hasFIPS(3)) { if (hasFIPS()) { skip( - 'digest/kangarootwelve.tentative.https.any.js', - 'digest/turboshake.tentative.https.any.js'); + 'modern-algos/digest/kangarootwelve.https.any.js', + 'modern-algos/digest/turboshake.https.any.js'); } // OpenSSL 3.0 through 3.3 reject SHA-1 signature generation in FIPS mode. @@ -153,39 +153,39 @@ if (hasFIPS(3) && !hasOpenSSL(3, 4)) { if (hasFIPS(3, 5)) { skip( 'derive_bits_keys/cfrg_curves_bits_curve25519.https.any.js', - 'derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js', + 'secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js', 'derive_bits_keys/cfrg_curves_keys_curve25519.https.any.js', - 'derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js', - 'generateKey/failures_Hybrid-KEM.tentative.https.any.js', + 'secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js', + 'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js', 'generateKey/failures_X25519.https.any.js', - 'generateKey/failures_X448.tentative.https.any.js', - 'generateKey/successes_Hybrid-KEM.tentative.https.any.js', + 'secure-curves/generateKey/failures_X448.https.any.js', + 'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js', 'generateKey/successes_X25519.https.any.js', - 'generateKey/successes_X448.tentative.https.any.js', - 'import_export/Hybrid-KEM_importKey.tentative.https.any.js', + 'secure-curves/generateKey/successes_X448.https.any.js', + 'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js', 'import_export/okp_importKey_X25519.https.any.js', - 'import_export/okp_importKey_X448.tentative.https.any.js', + 'secure-curves/import_export/okp_importKey_X448.https.any.js', 'import_export/okp_importKey_failures_X25519.https.any.js', - 'import_export/okp_importKey_failures_X448.tentative.https.any.js', - 'serialization/hybridkem.tentative.https.window.js', + 'secure-curves/import_export/okp_importKey_failures_X448.https.any.js', + 'modern-algos/serialization/hybridkem.https.window.js', 'serialization/x25519.https.any.js', - 'serialization/x448.tentative.https.any.js'); + 'secure-curves/serialization/x448.https.any.js'); skipSubtests( [ 'derive_bits_keys/derived_bits_length.https.any.js', /^X25519 derivation/, ], - ['encap_decap/encap_decap_bits.tentative.https.any.js', /mlkem/i], - ['encap_decap/encap_decap_keys.tentative.https.any.js', /mlkem/i], - ['getPublicKey.tentative.https.any.js', /(?:X25519|X448|MLKEM)/], + ['modern-algos/encap_decap/encap_decap_bits.https.any.js', /mlkem/i], + ['modern-algos/encap_decap/encap_decap_keys.https.any.js', /mlkem/i], + ['modern-algos/getPublicKey.https.any.js', /(?:X25519|X448|MLKEM)/], [ - 'import_export/raw_format_aliases.tentative.https.any.js', + 'modern-algos/import_export/raw_format_aliases.https.any.js', /(?:X25519|X448)/, ], - ['supports-modern.tentative.https.any.js', /mlkem/i], + ['modern-algos/supports-modern.https.any.js', /mlkem/i], [ - 'supports.tentative.https.any.js', + 'modern-algos/supports.https.any.js', /(?:X25519|^deriveKey promise tests|^supports validates the ECDH public key$)/, ], [ @@ -245,7 +245,7 @@ if (hasFIPS(4)) { if (!hasFIPS()) { skipSubtests( - ['digest/kangarootwelve.tentative.https.any.js', /C=(?:\d{4,}|5(?:1[3-9]|[2-9]\d)|[6-9]\d{2}) bytes/]); + ['modern-algos/digest/kangarootwelve.https.any.js', /C=(?:\d{4,}|5(?:1[3-9]|[2-9]\d)|[6-9]\d{2}) bytes/]); } function assertNoOverlap(fileSkips, subtestSkips) { From 6886497901df90361c367291ae4f3f473cd22467 Mon Sep 17 00:00:00 2001 From: Filip Skokan Date: Tue, 13 Oct 2026 08:27:30 +0200 Subject: [PATCH 3/3] fixup! test: update WPT for WebCryptoAPI to b638c093cd --- test/parallel/test-common-wpt-any.js | 30 ++++++++++++++-------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/test/parallel/test-common-wpt-any.js b/test/parallel/test-common-wpt-any.js index c198fd707147..6244453f29c2 100644 --- a/test/parallel/test-common-wpt-any.js +++ b/test/parallel/test-common-wpt-any.js @@ -38,7 +38,7 @@ assert.deepStrictEqual(getUnexpectedPasses(flakySpecs, {}), []); const specs = WPTTestSpec.from( 'WebCryptoAPI', - 'getPublicKey.tentative.https.any.js', + 'modern-algos/getPublicKey.https.any.js', [], ); @@ -47,11 +47,11 @@ assert.deepStrictEqual(specs.map((spec) => ({ isWebWorkerTest: spec.isWebWorkerTest(), })), [ { - testPath: 'WebCryptoAPI/getPublicKey.tentative.https.any.html', + testPath: 'WebCryptoAPI/modern-algos/getPublicKey.https.any.html', isWebWorkerTest: false, }, { - testPath: 'WebCryptoAPI/getPublicKey.tentative.https.any.worker.html', + testPath: 'WebCryptoAPI/modern-algos/getPublicKey.https.any.worker.html', isWebWorkerTest: true, }, ]); @@ -90,7 +90,7 @@ assert.deepStrictEqual( const skippedSpecs = WPTTestSpec.from( 'WebCryptoAPI', - 'getPublicKey.tentative.https.any.js', + 'modern-algos/getPublicKey.https.any.js', [{ requires: [], skip: 'unsupported' }], ); assert.deepStrictEqual( @@ -100,7 +100,7 @@ assert.deepStrictEqual( const skippedSubtestSpecs = WPTTestSpec.from( 'WebCryptoAPI', - 'getPublicKey.tentative.https.any.js', + 'modern-algos/getPublicKey.https.any.js', [{ requires: [], skipTests: [/getPublicKey method/] }], ); assert.ok(skippedSubtestSpecs.every( @@ -108,7 +108,7 @@ assert.ok(skippedSubtestSpecs.every( const scopedSpecs = WPTTestSpec.from( 'WebCryptoAPI', - 'getPublicKey.tentative.https.any.js', + 'modern-algos/getPublicKey.https.any.js', [], (spec) => (spec.getStatusKey().endsWith('.any.worker.html') ? [{ requires: [], skip: 'worker only' }] : []), @@ -119,26 +119,26 @@ assert.deepStrictEqual( ); const sourceRule = { - key: 'getPublicKey.tentative.https.any.js', + key: 'modern-algos/getPublicKey.https.any.js', requires: [], fail: { expected: ['shared failure'] }, }; const workerRule = { - key: 'getPublicKey.tentative.https.any.worker.html', + key: 'modern-algos/getPublicKey.https.any.worker.html', requires: [], fail: { expected: ['worker failure'] }, }; const expectedFailureSpecs = WPTTestSpec.from( 'WebCryptoAPI', - 'getPublicKey.tentative.https.any.js', + 'modern-algos/getPublicKey.https.any.js', [sourceRule], (spec) => (spec.isWebWorkerTest() ? [workerRule] : []), ); const expectedResults = { - 'getPublicKey.tentative.https.any.html': { + 'modern-algos/getPublicKey.https.any.html': { fail: { expected: ['shared failure'] }, }, - 'getPublicKey.tentative.https.any.worker.html': { + 'modern-algos/getPublicKey.https.any.worker.html': { fail: { expected: ['shared failure', 'worker failure'] }, }, }; @@ -147,15 +147,15 @@ assert.deepStrictEqual( getUnexpectedPasses(expectedFailureSpecs, expectedResults), [], ); -expectedResults['getPublicKey.tentative.https.any.worker.html'].fail.expected = +expectedResults['modern-algos/getPublicKey.https.any.worker.html'].fail.expected = ['worker failure']; assert.deepStrictEqual( getUnexpectedPasses(expectedFailureSpecs, expectedResults), - ['getPublicKey.tentative.https.any.worker.html:shared failure'], + ['modern-algos/getPublicKey.https.any.worker.html:shared failure'], ); -expectedResults['getPublicKey.tentative.https.any.worker.html'].fail.expected = +expectedResults['modern-algos/getPublicKey.https.any.worker.html'].fail.expected = ['shared failure']; assert.deepStrictEqual( getUnexpectedPasses(expectedFailureSpecs, expectedResults), - ['getPublicKey.tentative.https.any.worker.html:worker failure'], + ['modern-algos/getPublicKey.https.any.worker.html:worker failure'], );