mirror of
https://github.com/denoland/deno.git
synced 2024-11-21 15:04:11 -05:00
chore: update wpt (#14313)
This commit is contained in:
parent
66fbdd2ed4
commit
ca3b20df3c
2 changed files with 589 additions and 52 deletions
|
@ -1 +1 @@
|
|||
Subproject commit 96f98c458cd36e1f12b6807b22a3a9ee1e1b0326
|
||||
Subproject commit 959a86ad2e36ec5b939a6ccbfdb4ba2916c92f85
|
|
@ -939,7 +939,44 @@
|
|||
"Event constructors 3"
|
||||
],
|
||||
"event-global.worker.html": true
|
||||
}
|
||||
},
|
||||
"idlharness-shadowrealm.window.html": false,
|
||||
"idlharness.any.worker.html": [
|
||||
"Event interface: attribute srcElement",
|
||||
"Event interface: operation composedPath()",
|
||||
"Event interface: constant NONE on interface object",
|
||||
"Event interface: constant NONE on interface prototype object",
|
||||
"Event interface: constant CAPTURING_PHASE on interface object",
|
||||
"Event interface: constant CAPTURING_PHASE on interface prototype object",
|
||||
"Event interface: constant AT_TARGET on interface object",
|
||||
"Event interface: constant AT_TARGET on interface prototype object",
|
||||
"Event interface: constant BUBBLING_PHASE on interface object",
|
||||
"Event interface: constant BUBBLING_PHASE on interface prototype object",
|
||||
"Event interface: operation stopPropagation()",
|
||||
"Event interface: attribute cancelBubble",
|
||||
"Event interface: operation stopImmediatePropagation()",
|
||||
"Event interface: attribute returnValue",
|
||||
"Event interface: operation preventDefault()",
|
||||
"Event interface: attribute defaultPrevented",
|
||||
"Event interface: operation initEvent(DOMString, optional boolean, optional boolean)",
|
||||
"Event interface: new Event(\"foo\") must have own property \"isTrusted\"",
|
||||
"Event interface: new Event(\"foo\") must inherit property \"initEvent(DOMString, optional boolean, optional boolean)\" with the proper type",
|
||||
"Event interface: calling initEvent(DOMString, optional boolean, optional boolean) on new Event(\"foo\") with too few arguments must throw TypeError",
|
||||
"CustomEvent interface: operation initCustomEvent(DOMString, optional boolean, optional boolean, optional any)",
|
||||
"CustomEvent interface: new CustomEvent(\"foo\") must inherit property \"initCustomEvent(DOMString, optional boolean, optional boolean, optional any)\" with the proper type",
|
||||
"CustomEvent interface: calling initCustomEvent(DOMString, optional boolean, optional boolean, optional any) on new CustomEvent(\"foo\") with too few arguments must throw TypeError",
|
||||
"Event interface: new CustomEvent(\"foo\") must have own property \"isTrusted\"",
|
||||
"Event interface: new CustomEvent(\"foo\") must inherit property \"initEvent(DOMString, optional boolean, optional boolean)\" with the proper type",
|
||||
"Event interface: calling initEvent(DOMString, optional boolean, optional boolean) on new CustomEvent(\"foo\") with too few arguments must throw TypeError",
|
||||
"EventTarget interface: operation addEventListener(DOMString, EventListener?, optional (AddEventListenerOptions or boolean))",
|
||||
"EventTarget interface: operation removeEventListener(DOMString, EventListener?, optional (EventListenerOptions or boolean))",
|
||||
"AbortController interface: existence and properties of interface object",
|
||||
"AbortController interface: operation abort(optional any)",
|
||||
"AbortSignal interface: existence and properties of interface object",
|
||||
"AbortSignal interface: operation abort(optional any)",
|
||||
"AbortSignal interface: operation timeout(unsigned long long)",
|
||||
"AbortSignal interface: attribute onabort"
|
||||
]
|
||||
},
|
||||
"encoding": {
|
||||
"api-basics.any.html": true,
|
||||
|
@ -1126,7 +1163,8 @@
|
|||
"unsupported-encodings.any.worker.html": false,
|
||||
"single-byte-decoder.window.html?TextDecoder": true,
|
||||
"textdecoder-eof.any.html": true,
|
||||
"textdecoder-eof.any.worker.html": true
|
||||
"textdecoder-eof.any.worker.html": true,
|
||||
"idlharness-shadowrealm.window.html": false
|
||||
},
|
||||
"hr-time": {
|
||||
"monotonic-clock.any.html": true,
|
||||
|
@ -1154,7 +1192,8 @@
|
|||
"WorkerGlobalScope interface: attribute performance",
|
||||
"WorkerGlobalScope interface: self must inherit property \"performance\" with the proper type"
|
||||
],
|
||||
"window-worker-timeOrigin.window.html": false
|
||||
"window-worker-timeOrigin.window.html": false,
|
||||
"idlharness-shadowrealm.window.html": false
|
||||
},
|
||||
"streams": {
|
||||
"idlharness.any.html": true,
|
||||
|
@ -1296,7 +1335,8 @@
|
|||
"queuing-strategies-size-function-per-global.window.html": false,
|
||||
"transferable": {
|
||||
"deserialize-error.window.html": false
|
||||
}
|
||||
},
|
||||
"idlharness-shadowrealm.window.html": false
|
||||
},
|
||||
"user-timing": {
|
||||
"buffered-flag.any.html": false,
|
||||
|
@ -1842,9 +1882,8 @@
|
|||
"Parsing: <http://ho%1Dst/> against <about:blank>",
|
||||
"Parsing: <http://ho%1Est/> against <about:blank>",
|
||||
"Parsing: <http://ho%1Fst/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Fst/> against <about:blank>",
|
||||
"Parsing: <foo://ho|st/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Cst/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Fst/> against <about:blank>",
|
||||
"Parsing: <file://%43%7C> against <about:blank>",
|
||||
"Parsing: <file://%43|> against <about:blank>",
|
||||
"Parsing: <file://C%7C> against <about:blank>",
|
||||
|
@ -1987,9 +2026,8 @@
|
|||
"Parsing: <http://ho%1Dst/> against <about:blank>",
|
||||
"Parsing: <http://ho%1Est/> against <about:blank>",
|
||||
"Parsing: <http://ho%1Fst/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Fst/> against <about:blank>",
|
||||
"Parsing: <foo://ho|st/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Cst/> against <about:blank>",
|
||||
"Parsing: <http://ho%7Fst/> against <about:blank>",
|
||||
"Parsing: <file://%43%7C> against <about:blank>",
|
||||
"Parsing: <file://%43|> against <about:blank>",
|
||||
"Parsing: <file://C%7C> against <about:blank>",
|
||||
|
@ -2083,14 +2121,14 @@
|
|||
"Setting pathname with trailing U+0000 (https:)",
|
||||
"Setting protocol with leading U+001F (https:)",
|
||||
"Setting protocol with U+001F before inserted colon (https:)",
|
||||
"Setting port with leading U+001F (https:)",
|
||||
"Setting pathname with trailing U+001F (https:)",
|
||||
"Setting host with leading U+001F (https:)",
|
||||
"Setting hostname with leading U+001F (https:)",
|
||||
"Setting host with middle U+001F (https:)",
|
||||
"Setting hostname with middle U+001F (https:)",
|
||||
"Setting host with trailing U+001F (https:)",
|
||||
"Setting hostname with trailing U+001F (https:)",
|
||||
"Setting port with leading U+001F (https:)",
|
||||
"Setting pathname with trailing U+001F (https:)",
|
||||
"Setting protocol with leading U+0000 (wpt++:)",
|
||||
"Setting protocol with U+0000 before inserted colon (wpt++:)",
|
||||
"Setting port with leading U+0000 (wpt++:)",
|
||||
|
@ -2107,14 +2145,14 @@
|
|||
"Setting pathname with trailing U+0000 (https:)",
|
||||
"Setting protocol with leading U+001F (https:)",
|
||||
"Setting protocol with U+001F before inserted colon (https:)",
|
||||
"Setting port with leading U+001F (https:)",
|
||||
"Setting pathname with trailing U+001F (https:)",
|
||||
"Setting host with leading U+001F (https:)",
|
||||
"Setting hostname with leading U+001F (https:)",
|
||||
"Setting host with middle U+001F (https:)",
|
||||
"Setting hostname with middle U+001F (https:)",
|
||||
"Setting host with trailing U+001F (https:)",
|
||||
"Setting hostname with trailing U+001F (https:)",
|
||||
"Setting port with leading U+001F (https:)",
|
||||
"Setting pathname with trailing U+001F (https:)",
|
||||
"Setting protocol with leading U+0000 (wpt++:)",
|
||||
"Setting protocol with U+0000 before inserted colon (wpt++:)",
|
||||
"Setting port with leading U+0000 (wpt++:)",
|
||||
|
@ -2177,6 +2215,459 @@
|
|||
"URL: Setting <non-spec:/>.pathname = '/..//p'",
|
||||
"URL: Setting <non-spec:/>.pathname = '//p'",
|
||||
"URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path"
|
||||
],
|
||||
"idlharness-shadowrealm.window.html": false,
|
||||
"percent-encoding.window.html": [
|
||||
"Input † with encoding big5",
|
||||
"Input † with encoding euc-kr",
|
||||
"Input † with encoding utf-8",
|
||||
"Input † with encoding windows-1252",
|
||||
"Input \u000eA with encoding big5",
|
||||
"Input \u000eA with encoding iso-2022-jp",
|
||||
"Input \u000eA with encoding utf-8",
|
||||
"Input ‾\\ with encoding iso-2022-jp",
|
||||
"Input ‾\\ with encoding utf-8",
|
||||
"Input with encoding gb18030",
|
||||
"Input with encoding utf-8",
|
||||
"Input − with encoding shift_jis",
|
||||
"Input − with encoding utf-8",
|
||||
"Input á| with encoding utf-8"
|
||||
],
|
||||
"url-setters-a-area.window.html": [
|
||||
"<a>: Setting <a://example.net>.protocol = '' The empty string is not a valid scheme. Setter leaves the URL unchanged.",
|
||||
"<area>: Setting <a://example.net>.protocol = '' The empty string is not a valid scheme. Setter leaves the URL unchanged.",
|
||||
"<a>: Setting <a://example.net>.protocol = 'b'",
|
||||
"<area>: Setting <a://example.net>.protocol = 'b'",
|
||||
"<a>: Setting <javascript:alert(1)>.protocol = 'defuse'",
|
||||
"<area>: Setting <javascript:alert(1)>.protocol = 'defuse'",
|
||||
"<a>: Setting <a://example.net>.protocol = 'B' Upper-case ASCII is lower-cased",
|
||||
"<area>: Setting <a://example.net>.protocol = 'B' Upper-case ASCII is lower-cased",
|
||||
"<a>: Setting <a://example.net>.protocol = 'é' Non-ASCII is rejected",
|
||||
"<area>: Setting <a://example.net>.protocol = 'é' Non-ASCII is rejected",
|
||||
"<a>: Setting <a://example.net>.protocol = '0b' No leading digit",
|
||||
"<area>: Setting <a://example.net>.protocol = '0b' No leading digit",
|
||||
"<a>: Setting <a://example.net>.protocol = '+b' No leading punctuation",
|
||||
"<area>: Setting <a://example.net>.protocol = '+b' No leading punctuation",
|
||||
"<a>: Setting <a://example.net>.protocol = 'bC0+-.'",
|
||||
"<area>: Setting <a://example.net>.protocol = 'bC0+-.'",
|
||||
"<a>: Setting <a://example.net>.protocol = 'b,c' Only some punctuation is acceptable",
|
||||
"<area>: Setting <a://example.net>.protocol = 'b,c' Only some punctuation is acceptable",
|
||||
"<a>: Setting <a://example.net>.protocol = 'bé' Non-ASCII is rejected",
|
||||
"<area>: Setting <a://example.net>.protocol = 'bé' Non-ASCII is rejected",
|
||||
"<a>: Setting <http://test@example.net>.protocol = 'file' Can’t switch from URL containing username/password/port to file",
|
||||
"<area>: Setting <http://test@example.net>.protocol = 'file' Can’t switch from URL containing username/password/port to file",
|
||||
"<a>: Setting <https://example.net:1234>.protocol = 'file'",
|
||||
"<area>: Setting <https://example.net:1234>.protocol = 'file'",
|
||||
"<a>: Setting <wss://x:x@example.net:1234>.protocol = 'file'",
|
||||
"<area>: Setting <wss://x:x@example.net:1234>.protocol = 'file'",
|
||||
"<a>: Setting <file://localhost/>.protocol = 'http' Can’t switch from file URL with no host",
|
||||
"<area>: Setting <file://localhost/>.protocol = 'http' Can’t switch from file URL with no host",
|
||||
"<a>: Setting <file:///test>.protocol = 'https'",
|
||||
"<area>: Setting <file:///test>.protocol = 'https'",
|
||||
"<a>: Setting <file:>.protocol = 'wss'",
|
||||
"<area>: Setting <file:>.protocol = 'wss'",
|
||||
"<a>: Setting <http://example.net>.protocol = 'b' Can’t switch from special scheme to non-special",
|
||||
"<area>: Setting <http://example.net>.protocol = 'b' Can’t switch from special scheme to non-special",
|
||||
"<a>: Setting <file://hi/path>.protocol = 's'",
|
||||
"<area>: Setting <file://hi/path>.protocol = 's'",
|
||||
"<a>: Setting <https://example.net>.protocol = 's'",
|
||||
"<area>: Setting <https://example.net>.protocol = 's'",
|
||||
"<a>: Setting <ftp://example.net>.protocol = 'test'",
|
||||
"<area>: Setting <ftp://example.net>.protocol = 'test'",
|
||||
"<a>: Setting <mailto:me@example.net>.protocol = 'http' Cannot-be-a-base URL doesn’t have a host, but URL in a special scheme must.",
|
||||
"<area>: Setting <mailto:me@example.net>.protocol = 'http' Cannot-be-a-base URL doesn’t have a host, but URL in a special scheme must.",
|
||||
"<a>: Setting <ssh://me@example.net>.protocol = 'http' Can’t switch from non-special scheme to special",
|
||||
"<area>: Setting <ssh://me@example.net>.protocol = 'http' Can’t switch from non-special scheme to special",
|
||||
"<a>: Setting <ssh://me@example.net>.protocol = 'https'",
|
||||
"<area>: Setting <ssh://me@example.net>.protocol = 'https'",
|
||||
"<a>: Setting <ssh://me@example.net>.protocol = 'file'",
|
||||
"<area>: Setting <ssh://me@example.net>.protocol = 'file'",
|
||||
"<a>: Setting <ssh://example.net>.protocol = 'file'",
|
||||
"<area>: Setting <ssh://example.net>.protocol = 'file'",
|
||||
"<a>: Setting <nonsense:///test>.protocol = 'https'",
|
||||
"<area>: Setting <nonsense:///test>.protocol = 'https'",
|
||||
"<a>: Setting <http://example.net>.protocol = 'https:foo : bar' Stuff after the first ':' is ignored",
|
||||
"<area>: Setting <http://example.net>.protocol = 'https:foo : bar' Stuff after the first ':' is ignored",
|
||||
"<a>: Setting <data:text/html,<p>Test>.protocol = 'view-source+data:foo : bar' Stuff after the first ':' is ignored",
|
||||
"<area>: Setting <data:text/html,<p>Test>.protocol = 'view-source+data:foo : bar' Stuff after the first ':' is ignored",
|
||||
"<a>: Setting <http://foo.com:443/>.protocol = 'https' Port is set to null if it is the default for new scheme.",
|
||||
"<area>: Setting <http://foo.com:443/>.protocol = 'https' Port is set to null if it is the default for new scheme.",
|
||||
"<a>: Setting <file:///home/you/index.html>.username = 'me' No host means no username",
|
||||
"<area>: Setting <file:///home/you/index.html>.username = 'me' No host means no username",
|
||||
"<a>: Setting <unix:/run/foo.socket>.username = 'me' No host means no username",
|
||||
"<area>: Setting <unix:/run/foo.socket>.username = 'me' No host means no username",
|
||||
"<a>: Setting <mailto:you@example.net>.username = 'me' Cannot-be-a-base means no username",
|
||||
"<area>: Setting <mailto:you@example.net>.username = 'me' Cannot-be-a-base means no username",
|
||||
"<a>: Setting <javascript:alert(1)>.username = 'wario'",
|
||||
"<area>: Setting <javascript:alert(1)>.username = 'wario'",
|
||||
"<a>: Setting <http://example.net>.username = 'me'",
|
||||
"<area>: Setting <http://example.net>.username = 'me'",
|
||||
"<a>: Setting <http://:secret@example.net>.username = 'me'",
|
||||
"<area>: Setting <http://:secret@example.net>.username = 'me'",
|
||||
"<a>: Setting <http://me@example.net>.username = ''",
|
||||
"<area>: Setting <http://me@example.net>.username = ''",
|
||||
"<a>: Setting <http://me:secret@example.net>.username = ''",
|
||||
"<area>: Setting <http://me:secret@example.net>.username = ''",
|
||||
"<a>: Setting <http://example.net>.username = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.",
|
||||
"<area>: Setting <http://example.net>.username = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.",
|
||||
"<a>: Setting <http://example.net>.username = '%c3%89té' Bytes already percent-encoded are left as-is.",
|
||||
"<area>: Setting <http://example.net>.username = '%c3%89té' Bytes already percent-encoded are left as-is.",
|
||||
"<a>: Setting <sc:///>.username = 'x'",
|
||||
"<area>: Setting <sc:///>.username = 'x'",
|
||||
"<a>: Setting <javascript://x/>.username = 'wario'",
|
||||
"<area>: Setting <javascript://x/>.username = 'wario'",
|
||||
"<a>: Setting <file://test/>.username = 'test'",
|
||||
"<area>: Setting <file://test/>.username = 'test'",
|
||||
"<a>: Setting <file:///home/me/index.html>.password = 'secret' No host means no password",
|
||||
"<area>: Setting <file:///home/me/index.html>.password = 'secret' No host means no password",
|
||||
"<a>: Setting <unix:/run/foo.socket>.password = 'secret' No host means no password",
|
||||
"<area>: Setting <unix:/run/foo.socket>.password = 'secret' No host means no password",
|
||||
"<a>: Setting <mailto:me@example.net>.password = 'secret' Cannot-be-a-base means no password",
|
||||
"<area>: Setting <mailto:me@example.net>.password = 'secret' Cannot-be-a-base means no password",
|
||||
"<a>: Setting <http://example.net>.password = 'secret'",
|
||||
"<area>: Setting <http://example.net>.password = 'secret'",
|
||||
"<a>: Setting <http://me@example.net>.password = 'secret'",
|
||||
"<area>: Setting <http://me@example.net>.password = 'secret'",
|
||||
"<a>: Setting <http://:secret@example.net>.password = ''",
|
||||
"<area>: Setting <http://:secret@example.net>.password = ''",
|
||||
"<a>: Setting <http://me:secret@example.net>.password = ''",
|
||||
"<area>: Setting <http://me:secret@example.net>.password = ''",
|
||||
"<a>: Setting <http://example.net>.password = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.",
|
||||
"<area>: Setting <http://example.net>.password = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.",
|
||||
"<a>: Setting <http://example.net>.password = '%c3%89té' Bytes already percent-encoded are left as-is.",
|
||||
"<area>: Setting <http://example.net>.password = '%c3%89té' Bytes already percent-encoded are left as-is.",
|
||||
"<a>: Setting <sc:///>.password = 'x'",
|
||||
"<area>: Setting <sc:///>.password = 'x'",
|
||||
"<a>: Setting <javascript://x/>.password = 'bowser'",
|
||||
"<area>: Setting <javascript://x/>.password = 'bowser'",
|
||||
"<a>: Setting <file://test/>.password = 'test'",
|
||||
"<area>: Setting <file://test/>.password = 'test'",
|
||||
"<a>: Setting <sc://x/>.host = '\u0000' Non-special scheme",
|
||||
"<area>: Setting <sc://x/>.host = '\u0000' Non-special scheme",
|
||||
"<a>: Setting <sc://x/>.host = '\t'",
|
||||
"<area>: Setting <sc://x/>.host = '\t'",
|
||||
"<a>: Setting <sc://x/>.host = '\n'",
|
||||
"<area>: Setting <sc://x/>.host = '\n'",
|
||||
"<a>: Setting <sc://x/>.host = '\r'",
|
||||
"<area>: Setting <sc://x/>.host = '\r'",
|
||||
"<a>: Setting <sc://x/>.host = ' '",
|
||||
"<area>: Setting <sc://x/>.host = ' '",
|
||||
"<a>: Setting <sc://x/>.host = '#'",
|
||||
"<area>: Setting <sc://x/>.host = '#'",
|
||||
"<a>: Setting <sc://x/>.host = '/'",
|
||||
"<area>: Setting <sc://x/>.host = '/'",
|
||||
"<a>: Setting <sc://x/>.host = '?'",
|
||||
"<area>: Setting <sc://x/>.host = '?'",
|
||||
"<a>: Setting <sc://x/>.host = '@'",
|
||||
"<area>: Setting <sc://x/>.host = '@'",
|
||||
"<a>: Setting <sc://x/>.host = 'ß'",
|
||||
"<area>: Setting <sc://x/>.host = 'ß'",
|
||||
"<a>: Setting <https://x/>.host = 'ß' IDNA Nontransitional_Processing",
|
||||
"<area>: Setting <https://x/>.host = 'ß' IDNA Nontransitional_Processing",
|
||||
"<a>: Setting <mailto:me@example.net>.host = 'example.com' Cannot-be-a-base means no host",
|
||||
"<area>: Setting <mailto:me@example.net>.host = 'example.com' Cannot-be-a-base means no host",
|
||||
"<a>: Setting <data:text/plain,Stuff>.host = 'example.net' Cannot-be-a-base means no host",
|
||||
"<area>: Setting <data:text/plain,Stuff>.host = 'example.net' Cannot-be-a-base means no host",
|
||||
"<a>: Setting <http://example.net>.host = 'example.com:8080'",
|
||||
"<area>: Setting <http://example.net>.host = 'example.com:8080'",
|
||||
"<a>: Setting <http://example.net:8080>.host = 'example.com' Port number is unchanged if not specified in the new value",
|
||||
"<area>: Setting <http://example.net:8080>.host = 'example.com' Port number is unchanged if not specified in the new value",
|
||||
"<a>: Setting <http://example.net:8080>.host = 'example.com:' Port number is unchanged if not specified",
|
||||
"<area>: Setting <http://example.net:8080>.host = 'example.com:' Port number is unchanged if not specified",
|
||||
"<a>: Setting <http://example.net>.host = '' The empty host is not valid for special schemes",
|
||||
"<area>: Setting <http://example.net>.host = '' The empty host is not valid for special schemes",
|
||||
"<a>: Setting <view-source+http://example.net/foo>.host = '' The empty host is OK for non-special schemes",
|
||||
"<area>: Setting <view-source+http://example.net/foo>.host = '' The empty host is OK for non-special schemes",
|
||||
"<a>: Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host",
|
||||
"<area>: Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host",
|
||||
"<a>: Setting <http://example.net>.host = '0x7F000001:8080' IPv4 address syntax is normalized",
|
||||
"<area>: Setting <http://example.net>.host = '0x7F000001:8080' IPv4 address syntax is normalized",
|
||||
"<a>: Setting <http://example.net>.host = '[::0:01]:2' IPv6 address syntax is normalized",
|
||||
"<area>: Setting <http://example.net>.host = '[::0:01]:2' IPv6 address syntax is normalized",
|
||||
"<a>: Setting <http://example.net>.host = '[2001:db8::2]:4002' IPv6 literal address with port, crbug.com/1012416",
|
||||
"<area>: Setting <http://example.net>.host = '[2001:db8::2]:4002' IPv6 literal address with port, crbug.com/1012416",
|
||||
"<a>: Setting <http://example.net>.host = 'example.com:80' Default port number is removed",
|
||||
"<area>: Setting <http://example.net>.host = 'example.com:80' Default port number is removed",
|
||||
"<a>: Setting <https://example.net>.host = 'example.com:443' Default port number is removed",
|
||||
"<area>: Setting <https://example.net>.host = 'example.com:443' Default port number is removed",
|
||||
"<a>: Setting <https://example.net>.host = 'example.com:80' Default port number is only removed for the relevant scheme",
|
||||
"<area>: Setting <https://example.net>.host = 'example.com:80' Default port number is only removed for the relevant scheme",
|
||||
"<a>: Setting <http://example.net:8080>.host = 'example.com:80' Port number is removed if new port is scheme default and existing URL has a non-default port",
|
||||
"<area>: Setting <http://example.net:8080>.host = 'example.com:80' Port number is removed if new port is scheme default and existing URL has a non-default port",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com/stuff' Stuff after a / delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com/stuff' Stuff after a / delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080/stuff' Stuff after a / delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080/stuff' Stuff after a / delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com#stuff' Stuff after a # delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com#stuff' Stuff after a # delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080#stuff' Stuff after a # delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080#stuff' Stuff after a # delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<a>: Setting <view-source+http://example.net/path>.host = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts",
|
||||
"<area>: Setting <view-source+http://example.net/path>.host = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts",
|
||||
"<a>: Setting <view-source+http://example.net/path>.host = 'example.com:8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <view-source+http://example.net/path>.host = 'example.com:8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:8080+2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:8080+2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:65535' Port numbers are 16 bit integers",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:65535' Port numbers are 16 bit integers",
|
||||
"<a>: Setting <http://example.net/path>.host = 'example.com:65536' Port numbers are 16 bit integers, overflowing is an error. Hostname is still set, though.",
|
||||
"<area>: Setting <http://example.net/path>.host = 'example.com:65536' Port numbers are 16 bit integers, overflowing is an error. Hostname is still set, though.",
|
||||
"<a>: Setting <http://example.net/>.host = '[google.com]' Broken IPv6",
|
||||
"<area>: Setting <http://example.net/>.host = '[google.com]' Broken IPv6",
|
||||
"<a>: Setting <http://example.net/>.host = '[::1.2.3.4x]'",
|
||||
"<area>: Setting <http://example.net/>.host = '[::1.2.3.4x]'",
|
||||
"<a>: Setting <http://example.net/>.host = '[::1.2.3.]'",
|
||||
"<area>: Setting <http://example.net/>.host = '[::1.2.3.]'",
|
||||
"<a>: Setting <http://example.net/>.host = '[::1.2.]'",
|
||||
"<area>: Setting <http://example.net/>.host = '[::1.2.]'",
|
||||
"<a>: Setting <http://example.net/>.host = '[::1.]'",
|
||||
"<area>: Setting <http://example.net/>.host = '[::1.]'",
|
||||
"<a>: Setting <file://y/>.host = 'x:123'",
|
||||
"<area>: Setting <file://y/>.host = 'x:123'",
|
||||
"<a>: Setting <file://y/>.host = 'loc%41lhost'",
|
||||
"<area>: Setting <file://y/>.host = 'loc%41lhost'",
|
||||
"<a>: Setting <file://hi/x>.host = ''",
|
||||
"<area>: Setting <file://hi/x>.host = ''",
|
||||
"<a>: Setting <sc://test@test/>.host = ''",
|
||||
"<area>: Setting <sc://test@test/>.host = ''",
|
||||
"<a>: Setting <sc://test:12/>.host = ''",
|
||||
"<area>: Setting <sc://test:12/>.host = ''",
|
||||
"<a>: Setting <http://example.com/>.host = '///bad.com' Leading / is not stripped",
|
||||
"<area>: Setting <http://example.com/>.host = '///bad.com' Leading / is not stripped",
|
||||
"<a>: Setting <sc://example.com/>.host = '///bad.com' Leading / is not stripped",
|
||||
"<area>: Setting <sc://example.com/>.host = '///bad.com' Leading / is not stripped",
|
||||
"<a>: Setting <sc://x/>.hostname = '\u0000' Non-special scheme",
|
||||
"<area>: Setting <sc://x/>.hostname = '\u0000' Non-special scheme",
|
||||
"<a>: Setting <sc://x/>.hostname = '\t'",
|
||||
"<area>: Setting <sc://x/>.hostname = '\t'",
|
||||
"<a>: Setting <sc://x/>.hostname = '\n'",
|
||||
"<area>: Setting <sc://x/>.hostname = '\n'",
|
||||
"<a>: Setting <sc://x/>.hostname = '\r'",
|
||||
"<area>: Setting <sc://x/>.hostname = '\r'",
|
||||
"<a>: Setting <sc://x/>.hostname = ' '",
|
||||
"<area>: Setting <sc://x/>.hostname = ' '",
|
||||
"<a>: Setting <sc://x/>.hostname = '#'",
|
||||
"<area>: Setting <sc://x/>.hostname = '#'",
|
||||
"<a>: Setting <sc://x/>.hostname = '/'",
|
||||
"<area>: Setting <sc://x/>.hostname = '/'",
|
||||
"<a>: Setting <sc://x/>.hostname = '?'",
|
||||
"<area>: Setting <sc://x/>.hostname = '?'",
|
||||
"<a>: Setting <sc://x/>.hostname = '@'",
|
||||
"<area>: Setting <sc://x/>.hostname = '@'",
|
||||
"<a>: Setting <mailto:me@example.net>.hostname = 'example.com' Cannot-be-a-base means no host",
|
||||
"<area>: Setting <mailto:me@example.net>.hostname = 'example.com' Cannot-be-a-base means no host",
|
||||
"<a>: Setting <data:text/plain,Stuff>.hostname = 'example.net' Cannot-be-a-base means no host",
|
||||
"<area>: Setting <data:text/plain,Stuff>.hostname = 'example.net' Cannot-be-a-base means no host",
|
||||
"<a>: Setting <http://example.net:8080>.hostname = 'example.com'",
|
||||
"<area>: Setting <http://example.net:8080>.hostname = 'example.com'",
|
||||
"<a>: Setting <http://example.net>.hostname = '' The empty host is not valid for special schemes",
|
||||
"<area>: Setting <http://example.net>.hostname = '' The empty host is not valid for special schemes",
|
||||
"<a>: Setting <view-source+http://example.net/foo>.hostname = '' The empty host is OK for non-special schemes",
|
||||
"<area>: Setting <view-source+http://example.net/foo>.hostname = '' The empty host is OK for non-special schemes",
|
||||
"<a>: Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host",
|
||||
"<area>: Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host",
|
||||
"<a>: Setting <http://example.net:8080>.hostname = '0x7F000001' IPv4 address syntax is normalized",
|
||||
"<area>: Setting <http://example.net:8080>.hostname = '0x7F000001' IPv4 address syntax is normalized",
|
||||
"<a>: Setting <http://example.net>.hostname = '[::0:01]' IPv6 address syntax is normalized",
|
||||
"<area>: Setting <http://example.net>.hostname = '[::0:01]' IPv6 address syntax is normalized",
|
||||
"<a>: Setting <http://example.net/path>.hostname = 'example.com:8080' : delimiter invalidates entire value",
|
||||
"<area>: Setting <http://example.net/path>.hostname = 'example.com:8080' : delimiter invalidates entire value",
|
||||
"<a>: Setting <http://example.net:8080/path>.hostname = 'example.com:' : delimiter invalidates entire value",
|
||||
"<area>: Setting <http://example.net:8080/path>.hostname = 'example.com:' : delimiter invalidates entire value",
|
||||
"<a>: Setting <http://example.net/path>.hostname = 'example.com/stuff' Stuff after a / delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.hostname = 'example.com/stuff' Stuff after a / delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.hostname = 'example.com?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.hostname = 'example.com?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.hostname = 'example.com#stuff' Stuff after a # delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.hostname = 'example.com#stuff' Stuff after a # delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.hostname = 'example.com\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<area>: Setting <http://example.net/path>.hostname = 'example.com\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<a>: Setting <view-source+http://example.net/path>.hostname = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts",
|
||||
"<area>: Setting <view-source+http://example.net/path>.hostname = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts",
|
||||
"<a>: Setting <http://example.net/>.hostname = '[google.com]' Broken IPv6",
|
||||
"<area>: Setting <http://example.net/>.hostname = '[google.com]' Broken IPv6",
|
||||
"<a>: Setting <http://example.net/>.hostname = '[::1.2.3.4x]'",
|
||||
"<area>: Setting <http://example.net/>.hostname = '[::1.2.3.4x]'",
|
||||
"<a>: Setting <http://example.net/>.hostname = '[::1.2.3.]'",
|
||||
"<area>: Setting <http://example.net/>.hostname = '[::1.2.3.]'",
|
||||
"<a>: Setting <http://example.net/>.hostname = '[::1.2.]'",
|
||||
"<area>: Setting <http://example.net/>.hostname = '[::1.2.]'",
|
||||
"<a>: Setting <http://example.net/>.hostname = '[::1.]'",
|
||||
"<area>: Setting <http://example.net/>.hostname = '[::1.]'",
|
||||
"<a>: Setting <file://y/>.hostname = 'x:123'",
|
||||
"<area>: Setting <file://y/>.hostname = 'x:123'",
|
||||
"<a>: Setting <file://y/>.hostname = 'loc%41lhost'",
|
||||
"<area>: Setting <file://y/>.hostname = 'loc%41lhost'",
|
||||
"<a>: Setting <file://hi/x>.hostname = ''",
|
||||
"<area>: Setting <file://hi/x>.hostname = ''",
|
||||
"<a>: Setting <sc://test@test/>.hostname = ''",
|
||||
"<area>: Setting <sc://test@test/>.hostname = ''",
|
||||
"<a>: Setting <sc://test:12/>.hostname = ''",
|
||||
"<area>: Setting <sc://test:12/>.hostname = ''",
|
||||
"<a>: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path",
|
||||
"<area>: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path",
|
||||
"<a>: Setting <non-spec:/.//p>.hostname = ''",
|
||||
"<area>: Setting <non-spec:/.//p>.hostname = ''",
|
||||
"<a>: Setting <http://example.com/>.hostname = '///bad.com' Leading / is not stripped",
|
||||
"<area>: Setting <http://example.com/>.hostname = '///bad.com' Leading / is not stripped",
|
||||
"<a>: Setting <sc://example.com/>.hostname = '///bad.com' Leading / is not stripped",
|
||||
"<area>: Setting <sc://example.com/>.hostname = '///bad.com' Leading / is not stripped",
|
||||
"<a>: Setting <http://example.net>.port = '8080'",
|
||||
"<area>: Setting <http://example.net>.port = '8080'",
|
||||
"<a>: Setting <http://example.net:8080>.port = '' Port number is removed if empty is the new value",
|
||||
"<area>: Setting <http://example.net:8080>.port = '' Port number is removed if empty is the new value",
|
||||
"<a>: Setting <http://example.net:8080>.port = '80' Default port number is removed",
|
||||
"<area>: Setting <http://example.net:8080>.port = '80' Default port number is removed",
|
||||
"<a>: Setting <https://example.net:4433>.port = '443' Default port number is removed",
|
||||
"<area>: Setting <https://example.net:4433>.port = '443' Default port number is removed",
|
||||
"<a>: Setting <https://example.net>.port = '80' Default port number is only removed for the relevant scheme",
|
||||
"<area>: Setting <https://example.net>.port = '80' Default port number is only removed for the relevant scheme",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080/stuff' Stuff after a / delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080/stuff' Stuff after a / delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080?stuff' Stuff after a ? delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080#stuff' Stuff after a # delimiter is ignored",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080#stuff' Stuff after a # delimiter is ignored",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080\\stuff' Stuff after a \\ delimiter is ignored for special schemes",
|
||||
"<a>: Setting <view-source+http://example.net/path>.port = '8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <view-source+http://example.net/path>.port = '8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080stuff2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.port = '8080+2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<area>: Setting <http://example.net/path>.port = '8080+2' Anything other than ASCII digit stops the port parser in a setter but is not an error",
|
||||
"<a>: Setting <http://example.net/path>.port = '65535' Port numbers are 16 bit integers",
|
||||
"<area>: Setting <http://example.net/path>.port = '65535' Port numbers are 16 bit integers",
|
||||
"<a>: Setting <http://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error",
|
||||
"<area>: Setting <http://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error",
|
||||
"<a>: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error",
|
||||
"<area>: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error",
|
||||
"<a>: Setting <file://test/>.port = '12'",
|
||||
"<area>: Setting <file://test/>.port = '12'",
|
||||
"<a>: Setting <file://localhost/>.port = '12'",
|
||||
"<area>: Setting <file://localhost/>.port = '12'",
|
||||
"<a>: Setting <non-base:value>.port = '12'",
|
||||
"<area>: Setting <non-base:value>.port = '12'",
|
||||
"<a>: Setting <sc:///>.port = '12'",
|
||||
"<area>: Setting <sc:///>.port = '12'",
|
||||
"<a>: Setting <sc://x/>.port = '12'",
|
||||
"<area>: Setting <sc://x/>.port = '12'",
|
||||
"<a>: Setting <javascript://x/>.port = '12'",
|
||||
"<area>: Setting <javascript://x/>.port = '12'",
|
||||
"<a>: Setting <mailto:me@example.net>.pathname = '/foo' Cannot-be-a-base don’t have a path",
|
||||
"<area>: Setting <mailto:me@example.net>.pathname = '/foo' Cannot-be-a-base don’t have a path",
|
||||
"<a>: Setting <file:///some/path>.pathname = '' Special URLs cannot have their paths erased",
|
||||
"<area>: Setting <file:///some/path>.pathname = '' Special URLs cannot have their paths erased",
|
||||
"<a>: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased",
|
||||
"<area>: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased",
|
||||
"<a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased",
|
||||
"<area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased",
|
||||
"<a>: Setting <foo:/some/path>.pathname = '' Path-only URLs cannot have their paths erased",
|
||||
"<area>: Setting <foo:/some/path>.pathname = '' Path-only URLs cannot have their paths erased",
|
||||
"<a>: Setting <foo:/some/path>.pathname = 'test' Path-only URLs always have an initial slash",
|
||||
"<area>: Setting <foo:/some/path>.pathname = 'test' Path-only URLs always have an initial slash",
|
||||
"<a>: Setting <unix:/run/foo.socket?timeout=10>.pathname = '/var/log/../run/bar.socket'",
|
||||
"<area>: Setting <unix:/run/foo.socket?timeout=10>.pathname = '/var/log/../run/bar.socket'",
|
||||
"<a>: Setting <https://example.net#nav>.pathname = 'home'",
|
||||
"<area>: Setting <https://example.net#nav>.pathname = 'home'",
|
||||
"<a>: Setting <https://example.net#nav>.pathname = '../home'",
|
||||
"<area>: Setting <https://example.net#nav>.pathname = '../home'",
|
||||
"<a>: Setting <http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is a segment delimiter for 'special' URLs",
|
||||
"<area>: Setting <http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is a segment delimiter for 'special' URLs",
|
||||
"<a>: Setting <view-source+http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is *not* a segment delimiter for non-'special' URLs",
|
||||
"<area>: Setting <view-source+http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is *not* a segment delimiter for non-'special' URLs",
|
||||
"<a>: Setting <a:/>.pathname = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.",
|
||||
"<area>: Setting <a:/>.pathname = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.",
|
||||
"<a>: Setting <http://example.net>.pathname = '%2e%2E%c3%89té' Bytes already percent-encoded are left as-is, including %2E outside dotted segments.",
|
||||
"<area>: Setting <http://example.net>.pathname = '%2e%2E%c3%89té' Bytes already percent-encoded are left as-is, including %2E outside dotted segments.",
|
||||
"<a>: Setting <http://example.net>.pathname = '?' ? needs to be encoded",
|
||||
"<area>: Setting <http://example.net>.pathname = '?' ? needs to be encoded",
|
||||
"<a>: Setting <http://example.net>.pathname = '#' # needs to be encoded",
|
||||
"<area>: Setting <http://example.net>.pathname = '#' # needs to be encoded",
|
||||
"<a>: Setting <sc://example.net>.pathname = '?' ? needs to be encoded, non-special scheme",
|
||||
"<area>: Setting <sc://example.net>.pathname = '?' ? needs to be encoded, non-special scheme",
|
||||
"<a>: Setting <sc://example.net>.pathname = '#' # needs to be encoded, non-special scheme",
|
||||
"<area>: Setting <sc://example.net>.pathname = '#' # needs to be encoded, non-special scheme",
|
||||
"<a>: Setting <http://example.net>.pathname = '/?é' ? doesn't mess up encoding",
|
||||
"<area>: Setting <http://example.net>.pathname = '/?é' ? doesn't mess up encoding",
|
||||
"<a>: Setting <http://example.net>.pathname = '/#é' # doesn't mess up encoding",
|
||||
"<area>: Setting <http://example.net>.pathname = '/#é' # doesn't mess up encoding",
|
||||
"<a>: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes",
|
||||
"<area>: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes",
|
||||
"<a>: Setting <file:///unicorn>.pathname = '//\\/' File URLs and (back)slashes",
|
||||
"<area>: Setting <file:///unicorn>.pathname = '//\\/' File URLs and (back)slashes",
|
||||
"<a>: Setting <file:///unicorn>.pathname = '//monkey/..//' File URLs and (back)slashes",
|
||||
"<area>: Setting <file:///unicorn>.pathname = '//monkey/..//' File URLs and (back)slashes",
|
||||
"<a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path",
|
||||
"<area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path",
|
||||
"<a>: Setting <non-spec:/>.pathname = '/..//p'",
|
||||
"<area>: Setting <non-spec:/>.pathname = '/..//p'",
|
||||
"<a>: Setting <non-spec:/>.pathname = '//p'",
|
||||
"<area>: Setting <non-spec:/>.pathname = '//p'",
|
||||
"<a>: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path",
|
||||
"<area>: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path",
|
||||
"<a>: Setting <https://example.net#nav>.search = 'lang=fr'",
|
||||
"<area>: Setting <https://example.net#nav>.search = 'lang=fr'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.search = 'lang=fr'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.search = 'lang=fr'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.search = '?lang=fr'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.search = '?lang=fr'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.search = '??lang=fr'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.search = '??lang=fr'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.search = '?'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.search = '?'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.search = ''",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.search = ''",
|
||||
"<a>: Setting <https://example.net?lang=en-US>.search = ''",
|
||||
"<area>: Setting <https://example.net?lang=en-US>.search = ''",
|
||||
"<a>: Setting <https://example.net>.search = ''",
|
||||
"<area>: Setting <https://example.net>.search = ''",
|
||||
"<a>: Setting <a:/>.search = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed.",
|
||||
"<area>: Setting <a:/>.search = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed.",
|
||||
"<a>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is",
|
||||
"<area>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is",
|
||||
"<a>: Setting <https://example.net>.hash = 'main'",
|
||||
"<area>: Setting <https://example.net>.hash = 'main'",
|
||||
"<a>: Setting <https://example.net#nav>.hash = 'main'",
|
||||
"<area>: Setting <https://example.net#nav>.hash = 'main'",
|
||||
"<a>: Setting <https://example.net?lang=en-US>.hash = '##nav'",
|
||||
"<area>: Setting <https://example.net?lang=en-US>.hash = '##nav'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.hash = '#main'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.hash = '#main'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.hash = '#'",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.hash = '#'",
|
||||
"<a>: Setting <https://example.net?lang=en-US#nav>.hash = ''",
|
||||
"<area>: Setting <https://example.net?lang=en-US#nav>.hash = ''",
|
||||
"<a>: Setting <http://example.net>.hash = '#foo bar'",
|
||||
"<area>: Setting <http://example.net>.hash = '#foo bar'",
|
||||
"<a>: Setting <http://example.net>.hash = '#foo\"bar'",
|
||||
"<area>: Setting <http://example.net>.hash = '#foo\"bar'",
|
||||
"<a>: Setting <http://example.net>.hash = '#foo<bar'",
|
||||
"<area>: Setting <http://example.net>.hash = '#foo<bar'",
|
||||
"<a>: Setting <http://example.net>.hash = '#foo>bar'",
|
||||
"<area>: Setting <http://example.net>.hash = '#foo>bar'",
|
||||
"<a>: Setting <http://example.net>.hash = '#foo`bar'",
|
||||
"<area>: Setting <http://example.net>.hash = '#foo`bar'",
|
||||
"<a>: Setting <a:/>.hash = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' Simple percent-encoding; tabs and newlines are removed",
|
||||
"<area>: Setting <a:/>.hash = '\u0000\u0001\t\n\r\u001f !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' Simple percent-encoding; tabs and newlines are removed",
|
||||
"<a>: Setting <http://example.net>.hash = 'a\u0000b' Percent-encode NULLs in fragment",
|
||||
"<area>: Setting <http://example.net>.hash = 'a\u0000b' Percent-encode NULLs in fragment",
|
||||
"<a>: Setting <non-spec:/>.hash = 'a\u0000b' Percent-encode NULLs in fragment",
|
||||
"<area>: Setting <non-spec:/>.hash = 'a\u0000b' Percent-encode NULLs in fragment",
|
||||
"<a>: Setting <http://example.net>.hash = '%c3%89té' Bytes already percent-encoded are left as-is",
|
||||
"<area>: Setting <http://example.net>.hash = '%c3%89té' Bytes already percent-encoded are left as-is",
|
||||
"<a>: Setting <javascript:alert(1)>.hash = 'castle'",
|
||||
"<area>: Setting <javascript:alert(1)>.hash = 'castle'"
|
||||
]
|
||||
},
|
||||
"fetch": {
|
||||
|
@ -2882,7 +3373,9 @@
|
|||
"request.any.worker.html": [
|
||||
"Calling formData() on an aborted request",
|
||||
"Aborting a request after calling formData()"
|
||||
]
|
||||
],
|
||||
"cache.https.any.html": false,
|
||||
"cache.https.any.worker.html": false
|
||||
}
|
||||
},
|
||||
"content-encoding": {
|
||||
|
@ -2941,16 +3434,15 @@
|
|||
"range": {
|
||||
"general.any.html": [
|
||||
"Privileged header not allowed for guard type: request-no-cors",
|
||||
"Fetch with range header will be sent with Accept-Encoding: identity"
|
||||
"Fetch with range header will be sent with Accept-Encoding: identity",
|
||||
"Cross Origin Fetch with non safe range header"
|
||||
],
|
||||
"general.any.worker.html": [
|
||||
"Privileged header not allowed for guard type: request-no-cors",
|
||||
"Fetch with range header will be sent with Accept-Encoding: identity"
|
||||
"Fetch with range header will be sent with Accept-Encoding: identity",
|
||||
"Cross Origin Fetch with non safe range header"
|
||||
],
|
||||
"general.window.html": [
|
||||
"Script executed from partial response",
|
||||
"Fetch with range header will be sent with Accept-Encoding: identity"
|
||||
]
|
||||
"general.window.html": false
|
||||
}
|
||||
},
|
||||
"FileAPI": {
|
||||
|
@ -3732,37 +4224,77 @@
|
|||
"constructor.any.html?wpt_flags=h2": false,
|
||||
"constructor.any.html?wss": true,
|
||||
"constructor.any.worker.html?wpt_flags=h2": false,
|
||||
"constructor.any.worker.html?wss": true
|
||||
"constructor.any.worker.html?wss": true,
|
||||
"abort.any.html?wpt_flags=h2": [
|
||||
"abort after connect should do nothing"
|
||||
],
|
||||
"abort.any.worker.html?wpt_flags=h2": [
|
||||
"abort after connect should do nothing"
|
||||
],
|
||||
"backpressure-receive.any.worker.html?wpt_flags=h2": false
|
||||
}
|
||||
},
|
||||
"opening-handshake": {
|
||||
"003-sets-origin.worker.html": false
|
||||
}
|
||||
},
|
||||
"Create-on-worker-shutdown.any.worker.html": false,
|
||||
"Send-data.worker.html": true,
|
||||
"Send-data.worker.html?wpt_flags=h2": false,
|
||||
"Send-data.worker.html?wss": true,
|
||||
"idlharness.any.html": [
|
||||
"WebSocket interface: constant CONNECTING on interface object",
|
||||
"WebSocket interface: constant CONNECTING on interface prototype object",
|
||||
"WebSocket interface: constant OPEN on interface object",
|
||||
"WebSocket interface: constant OPEN on interface prototype object",
|
||||
"WebSocket interface: constant CLOSING on interface object",
|
||||
"WebSocket interface: constant CLOSING on interface prototype object",
|
||||
"WebSocket interface: constant CLOSED on interface object",
|
||||
"WebSocket interface: constant CLOSED on interface prototype object",
|
||||
"WebSocket interface: attribute onopen",
|
||||
"WebSocket interface: attribute onerror",
|
||||
"WebSocket interface: attribute onclose",
|
||||
"WebSocket interface: attribute onmessage",
|
||||
"CloseEvent interface: attribute wasClean",
|
||||
"CloseEvent interface: attribute code",
|
||||
"CloseEvent interface: attribute reason",
|
||||
"Stringification of new CloseEvent(\"close\")"
|
||||
],
|
||||
"idlharness.any.worker.html": [
|
||||
"WebSocket interface: constant CONNECTING on interface object",
|
||||
"WebSocket interface: constant CONNECTING on interface prototype object",
|
||||
"WebSocket interface: constant OPEN on interface object",
|
||||
"WebSocket interface: constant OPEN on interface prototype object",
|
||||
"WebSocket interface: constant CLOSING on interface object",
|
||||
"WebSocket interface: constant CLOSING on interface prototype object",
|
||||
"WebSocket interface: constant CLOSED on interface object",
|
||||
"WebSocket interface: constant CLOSED on interface prototype object",
|
||||
"WebSocket interface: attribute onopen",
|
||||
"WebSocket interface: attribute onerror",
|
||||
"WebSocket interface: attribute onclose",
|
||||
"WebSocket interface: attribute onmessage",
|
||||
"CloseEvent interface: attribute wasClean",
|
||||
"CloseEvent interface: attribute code",
|
||||
"CloseEvent interface: attribute reason",
|
||||
"Stringification of new CloseEvent(\"close\")"
|
||||
],
|
||||
"remove-own-iframe-during-onerror.window.html": false,
|
||||
"remove-own-iframe-during-onerror.window.html?wpt_flags=h2": false,
|
||||
"remove-own-iframe-during-onerror.window.html?wss": false
|
||||
},
|
||||
"workers": {
|
||||
"Worker-base64.any.worker.html": true,
|
||||
"Worker-call.worker.html": true,
|
||||
"Worker-constructor-proto.any.worker.html": true,
|
||||
"Worker-custom-event.any.worker.html": true,
|
||||
"Worker-formdata.any.worker.html": [
|
||||
"Test FormData interface object"
|
||||
],
|
||||
"Worker-location.sub.any.worker.html": [
|
||||
"Test WorkerLocation properties."
|
||||
],
|
||||
"Worker-formdata.any.worker.html": false,
|
||||
"Worker-location.sub.any.worker.html": false,
|
||||
"Worker-replace-event-handler.any.worker.html": true,
|
||||
"Worker-replace-global-constructor.any.worker.html": true,
|
||||
"Worker-replace-self.any.worker.html": true,
|
||||
"WorkerGlobalScope_requestAnimationFrame.tentative.worker.html": [
|
||||
"WorkerGlobalScope_requestAnimationFrame"
|
||||
],
|
||||
"WorkerLocation-origin.sub.window.html": [
|
||||
"workerLocation.origin must use ASCII code points"
|
||||
],
|
||||
"WorkerGlobalScope_requestAnimationFrame.tentative.worker.html": false,
|
||||
"WorkerLocation-origin.sub.window.html": false,
|
||||
"WorkerNavigator-hardware-concurrency.any.worker.html": true,
|
||||
"WorkerNavigator.any.worker.html": [
|
||||
"Testing Navigator properties on workers."
|
||||
],
|
||||
"WorkerNavigator.any.worker.html": false,
|
||||
"constructors": {
|
||||
"Worker": {
|
||||
"DedicatedWorkerGlobalScope-members.worker.html": [
|
||||
|
@ -3819,7 +4351,20 @@
|
|||
],
|
||||
"report-error-cross-origin.sub.any.worker.html": false,
|
||||
"report-error-redirect-to-cross-origin.sub.any.worker.html": false,
|
||||
"report-error-same-origin.sub.any.worker.html": false
|
||||
"report-error-same-origin.sub.any.worker.html": false,
|
||||
"report-error-setTimeout-cross-origin.sub.any.worker.html": [
|
||||
"WorkerGlobalScope error event: error",
|
||||
"WorkerGlobalScope error event: filename",
|
||||
"WorkerGlobalScope error event: lineno"
|
||||
],
|
||||
"report-error-setTimeout-redirect-to-cross-origin.sub.any.worker.html": [
|
||||
"WorkerGlobalScope error event: filename",
|
||||
"WorkerGlobalScope error event: lineno"
|
||||
],
|
||||
"report-error-setTimeout-same-origin.sub.any.worker.html": [
|
||||
"WorkerGlobalScope error event: filename",
|
||||
"WorkerGlobalScope error event: lineno"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -3837,9 +4382,7 @@
|
|||
"nested_worker.worker.html": true,
|
||||
"nested_worker_close_self.worker.html": true,
|
||||
"nested_worker_importScripts.worker.html": true,
|
||||
"nested_worker_sync_xhr.worker.html": [
|
||||
"Nested worker that issues a sync XHR"
|
||||
],
|
||||
"nested_worker_sync_xhr.worker.html": false,
|
||||
"semantics": {
|
||||
"encodings": {
|
||||
"004.worker.html": true
|
||||
|
@ -3882,15 +4425,8 @@
|
|||
"exposure.any.worker.html": true
|
||||
}
|
||||
},
|
||||
"shared-worker-from-blob-url.window.html": [
|
||||
"Creating a shared worker from a blob URL works.",
|
||||
"Creating a shared worker from a blob URL works immediately before revoking.",
|
||||
"Connecting to a shared worker on a revoked blob URL works."
|
||||
],
|
||||
"shared-worker-in-data-url-context.window.html": [
|
||||
"Create a shared worker in a data url frame",
|
||||
"Create a data url shared worker in a data url frame"
|
||||
],
|
||||
"shared-worker-from-blob-url.window.html": false,
|
||||
"shared-worker-in-data-url-context.window.html": false,
|
||||
"worker-performance.worker.html": [
|
||||
"Resource timing seems to work in workers",
|
||||
"performance.clearResourceTimings in workers",
|
||||
|
@ -4109,6 +4645,7 @@
|
|||
"decompression-uint8array-output.tentative.any.worker.html": true,
|
||||
"decompression-with-detach.tentative.window.html": true,
|
||||
"idlharness.https.any.html": true,
|
||||
"idlharness.https.any.worker.html": true
|
||||
"idlharness.https.any.worker.html": true,
|
||||
"idlharness-shadowrealm.window.html": false
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue