diff --git a/test/fixtures/wpt/README.md b/test/fixtures/wpt/README.md index ee3b1cb61460b8..1f3f51b9a4ffdc 100644 --- a/test/fixtures/wpt/README.md +++ b/test/fixtures/wpt/README.md @@ -10,7 +10,7 @@ See [test/wpt](../../wpt/README.md) for information on how these tests are run. Last update: -- common: /~https://github.com/web-platform-tests/wpt/tree/3586ff740b/common +- common: /~https://github.com/web-platform-tests/wpt/tree/bb97a68974/common - console: /~https://github.com/web-platform-tests/wpt/tree/3b1f72e99a/console - dom/abort: /~https://github.com/web-platform-tests/wpt/tree/625e1310ce/dom/abort - encoding: /~https://github.com/web-platform-tests/wpt/tree/35f70910d3/encoding @@ -18,9 +18,9 @@ Last update: - hr-time: /~https://github.com/web-platform-tests/wpt/tree/9910784394/hr-time - html/webappapis/microtask-queuing: /~https://github.com/web-platform-tests/wpt/tree/2c5c3c4c27/html/webappapis/microtask-queuing - html/webappapis/timers: /~https://github.com/web-platform-tests/wpt/tree/5873f2d8f1/html/webappapis/timers -- interfaces: /~https://github.com/web-platform-tests/wpt/tree/8602e9c9a1/interfaces -- resources: /~https://github.com/web-platform-tests/wpt/tree/e366371a19/resources -- url: /~https://github.com/web-platform-tests/wpt/tree/59d28c8f2d/url +- interfaces: /~https://github.com/web-platform-tests/wpt/tree/79fa4cf76e/interfaces +- resources: /~https://github.com/web-platform-tests/wpt/tree/972ca5b669/resources +- url: /~https://github.com/web-platform-tests/wpt/tree/33f2e3f2e7/url [Web Platform Tests]: /~https://github.com/web-platform-tests/wpt [`git node wpt`]: /~https://github.com/nodejs/node-core-utils/blob/master/docs/git-node.md#git-node-wpt diff --git a/test/fixtures/wpt/common/security-features/tools/spec.src.json b/test/fixtures/wpt/common/security-features/tools/spec.src.json index 5c8f97ad2eef22..0a46a1cd6d3182 100644 --- a/test/fixtures/wpt/common/security-features/tools/spec.src.json +++ b/test/fixtures/wpt/common/security-features/tools/spec.src.json @@ -94,16 +94,23 @@ "delivery_value": "*", "redirection": "*", "subresource": [ - "area-tag", "a-tag", + "area-tag", + "audio-tag", + "beacon", "fetch", "iframe-tag", "img-tag", + "link-css-tag", + "link-prefetch-tag", + "object-tag", + "picture-tag", "script-tag", "sharedworker-classic", "sharedworker-import", "sharedworker-import-data", "sharedworker-module", + "video-tag", "worker-classic", "worker-import", "worker-import-data", @@ -127,6 +134,27 @@ "cross-ws-downgrade" ], "expectation": "*" + }, + { + // Worklets are HTTPS contexts only + "expansion": "*", + "source_scheme": "http", + "source_context_list": "*", + "delivery_type": "*", + "delivery_value": "*", + "redirection": "*", + "subresource": [ + "worklet-animation", + "worklet-animation-import-data", + "worklet-audio", + "worklet-audio-import-data", + "worklet-layout", + "worklet-layout-import-data", + "worklet-paint", + "worklet-paint-import-data" + ], + "origin": "*", + "expectation": "*" } ], "source_context_schema": { diff --git a/test/fixtures/wpt/interfaces/html.idl b/test/fixtures/wpt/interfaces/html.idl index 08cc505da91ba0..f6789644339b4c 100644 --- a/test/fixtures/wpt/interfaces/html.idl +++ b/test/fixtures/wpt/interfaces/html.idl @@ -397,6 +397,8 @@ interface HTMLSourceElement : HTMLElement { [CEReactions] attribute USVString srcset; [CEReactions] attribute DOMString sizes; [CEReactions] attribute DOMString media; + [CEReactions] attribute unsigned long width; + [CEReactions] attribute unsigned long height; }; [Exposed=Window, @@ -467,7 +469,6 @@ interface HTMLObjectElement : HTMLElement { [CEReactions] attribute USVString data; [CEReactions] attribute DOMString type; [CEReactions] attribute DOMString name; - [CEReactions] attribute DOMString useMap; readonly attribute HTMLFormElement? form; [CEReactions] attribute DOMString width; [CEReactions] attribute DOMString height; @@ -2524,6 +2525,7 @@ partial interface HTMLObjectElement { [CEReactions] attribute unsigned long vspace; [CEReactions] attribute DOMString codeBase; [CEReactions] attribute DOMString codeType; + [CEReactions] attribute DOMString useMap; [CEReactions] attribute [LegacyNullToEmptyString] DOMString border; }; diff --git a/test/fixtures/wpt/resources/testharness.js b/test/fixtures/wpt/resources/testharness.js index c62f0917c173b0..21fa7933ed2b5a 100644 --- a/test/fixtures/wpt/resources/testharness.js +++ b/test/fixtures/wpt/resources/testharness.js @@ -1929,7 +1929,10 @@ policies and contribution forms [3]. throw new AssertionError(errors.join("\n\n")); } } - expose_assert(assert_any, "assert_any"); + // FIXME: assert_any cannot use expose_assert, because assert_wrapper does + // not support nested assert calls (e.g. to assert_func). We need to + // support bypassing assert_wrapper for the inner asserts here. + expose(assert_any, "assert_any"); /** * Assert that a feature is implemented, based on a 'truthy' condition. diff --git a/test/fixtures/wpt/url/resources/urltestdata.json b/test/fixtures/wpt/url/resources/urltestdata.json index f55a40338a30dd..b136020e8ba8ea 100644 --- a/test/fixtures/wpt/url/resources/urltestdata.json +++ b/test/fixtures/wpt/url/resources/urltestdata.json @@ -7429,5 +7429,185 @@ "protocol": "https:", "search": "", "username": "user" + }, + "Tests for the distinct percent-encode sets", + { + "input": "foo:// !\"$%&'()*+,-.;<=>@[\\]^_`{|}~@host/", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "foo://%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~@host/", + "origin": "null", + "password": "", + "pathname": "/", + "port":"", + "protocol": "foo:", + "search": "", + "username": "%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~" + }, + { + "input": "wss:// !\"$%&'()*+,-.;<=>@[]^_`{|}~@host/", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "wss://%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~@host/", + "origin": "wss://host", + "password": "", + "pathname": "/", + "port":"", + "protocol": "wss:", + "search": "", + "username": "%20!%22$%&'()*+,-.%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~" + }, + { + "input": "foo://joe: !\"$%&'()*+,-.:;<=>@[\\]^_`{|}~@host/", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "foo://joe:%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~@host/", + "origin": "null", + "password": "%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5C%5D%5E_%60%7B%7C%7D~", + "pathname": "/", + "port":"", + "protocol": "foo:", + "search": "", + "username": "joe" + }, + { + "input": "wss://joe: !\"$%&'()*+,-.:;<=>@[]^_`{|}~@host/", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "wss://joe:%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~@host/", + "origin": "wss://host", + "password": "%20!%22$%&'()*+,-.%3A%3B%3C%3D%3E%40%5B%5D%5E_%60%7B%7C%7D~", + "pathname": "/", + "port":"", + "protocol": "wss:", + "search": "", + "username": "joe" + }, + { "input": "foo://!\"$%&'()*+,-.;=_`{}~/", + "base": "about:blank", + "hash": "", + "host": "!\"$%&'()*+,-.;=_`{}~", + "hostname": "!\"$%&'()*+,-.;=_`{}~", + "href":"foo://!\"$%&'()*+,-.;=_`{}~/", + "origin": "null", + "password": "", + "pathname": "/", + "port":"", + "protocol": "foo:", + "search": "", + "username": "" + }, + { + "input": "wss://!\"$&'()*+,-.;=_`{}~/", + "base": "about:blank", + "hash": "", + "host": "!\"$&'()*+,-.;=_`{}~", + "hostname": "!\"$&'()*+,-.;=_`{}~", + "href":"wss://!\"$&'()*+,-.;=_`{}~/", + "origin": "wss://!\"$&'()*+,-.;=_`{}~", + "password": "", + "pathname": "/", + "port":"", + "protocol": "wss:", + "search": "", + "username": "" + }, + { + "input": "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~", + "origin": "null", + "password": "", + "pathname": "/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~", + "port":"", + "protocol": "foo:", + "search": "", + "username": "" + }, + { + "input": "wss://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~", + "origin": "wss://host", + "password": "", + "pathname": "/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~", + "port":"", + "protocol": "wss:", + "search": "", + "username": "" + }, + { + "input": "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~", + "origin": "null", + "password": "", + "pathname": "/dir/", + "port":"", + "protocol": "foo:", + "search": "?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~", + "username": "" + }, + { + "input": "wss://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~", + "base": "about:blank", + "hash": "", + "host": "host", + "hostname": "host", + "href": "wss://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~", + "origin": "wss://host", + "password": "", + "pathname": "/dir/", + "port":"", + "protocol": "wss:", + "search": "?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~", + "username": "" + }, + { + "input": "foo://host/dir/# !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~", + "base": "about:blank", + "hash": "#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~", + "host": "host", + "hostname": "host", + "href": "foo://host/dir/#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~", + "origin": "null", + "password": "", + "pathname": "/dir/", + "port":"", + "protocol": "foo:", + "search": "", + "username": "" + }, + { + "input": "wss://host/dir/# !\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~", + "base": "about:blank", + "hash": "#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~", + "host": "host", + "hostname": "host", + "href": "wss://host/dir/#%20!%22#$%&'()*+,-./:;%3C=%3E?@[\\]^_%60{|}~", + "origin": "wss://host", + "password": "", + "pathname": "/dir/", + "port":"", + "protocol": "wss:", + "search": "", + "username": "" } ] diff --git a/test/fixtures/wpt/versions.json b/test/fixtures/wpt/versions.json index c2cd318c2b721c..5aa72e4f084bff 100644 --- a/test/fixtures/wpt/versions.json +++ b/test/fixtures/wpt/versions.json @@ -1,6 +1,6 @@ { "common": { - "commit": "3586ff740b00aa1fa82ab00cccbc36cca0bb8ccb", + "commit": "bb97a689743eb5e3bc0bc92ac41ab266c54c134e", "path": "common" }, "console": { @@ -32,15 +32,15 @@ "path": "html/webappapis/timers" }, "interfaces": { - "commit": "8602e9c9a168c25838bc4b808e3d213ce94ccac1", + "commit": "79fa4cf76e0d39e3fc1b7ead85e067b0a064b892", "path": "interfaces" }, "resources": { - "commit": "e366371a194459f23f8d6115cfdb57e0bc851468", + "commit": "972ca5b6693bffebebc5805e1b9da68a6876e1f6", "path": "resources" }, "url": { - "commit": "59d28c8f2d91d12533cfd0371acbe473b1825967", + "commit": "33f2e3f2e759bd51ebf8e4b9a01b067bc8281c5c", "path": "url" } } \ No newline at end of file