url: percent-encode more characters in path URL queries
In particular, make sure to percent-encode # as otherwise URL setters may fail roundtripping: u = new URL("abc:hello?query#frag"); u.search = "?query#bad"; console.log(u.href); // before: "abc:hello?query#bad#frag" // after: "abc:hello?query%23bad#frag" New behavior matches Safari and the spec, except for the apostrophe character: Chrome encodes ' in non-special URL queries but not Safari or the spec. Bug: 1212545 Change-Id: Ie3b14f84bda664169f13ea36a4f739e2eb4ebc8b Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2891251 Reviewed-by: Mike West <mkwst@chromium.org> Commit-Queue: Timothy Gu <timothygu@chromium.org> Cr-Commit-Position: refs/heads/master@{#907326}
This commit is contained in:

committed by
Chromium LUCI CQ

parent
96cf1b632b
commit
b443c71219
third_party/blink/web_tests
fast
http
tests
platform
android
fuchsia
linux
external
mac
external
win
url
@ -13,17 +13,16 @@ FAIL src should be foo://user:tête à tête@host/. Was foo://user:t%C3%AAte %C3
|
||||
PASS src is expected
|
||||
PASS src is expected
|
||||
FAIL src should be foo://user:password@[xxxxx]/tête à tête/. Was foo://user:password@[xxxxx]/t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête]/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte]/.
|
||||
FAIL src should be foo://user:password@[?tête à tête/. Was foo://user:password@[?t%C3%AAte%20%C3%A0%20t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête]/. Was foo://user:password@[?t%C3%AAte%20%C3%A0%20t%C3%AAte]/.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be ws:/tête. Was ws://xn--tte-fma/.
|
||||
FAIL src should be ftp:/tête. Was ftp://xn--tte-fma/.
|
||||
FAIL src should be http:/tête. Was http://xn--tte-fma/.
|
||||
FAIL src should be https:/tête. Was https://xn--tte-fma/.
|
||||
FAIL src should be gopher:/tête. Was gopher:/t%C3%AAte.
|
||||
FAIL src should be ws://host:tête. Was ws://host:t%C3%AAte/.
|
||||
FAIL src should be ftp://host:tête. Was ftp://host:t%C3%AAte/.
|
||||
FAIL src should be http://host:tête. Was http://host:t%C3%AAte/.
|
||||
FAIL src should be https://host:tête. Was https://host:t%C3%AAte/.
|
||||
PASS successfullyParsed is true
|
||||
|
||||
TEST COMPLETE
|
||||
|
@ -36,12 +36,11 @@ var testSet = [
|
||||
'foo://user:password@host:80tête à tête',
|
||||
'foo://user:password@host:tête à tête/',
|
||||
'foo://user:password@host:80tête à tête',
|
||||
// The schemes "ws:", "ftp:", "http:", "https:", "gother:" take a shortcut during parsing so we test them separately.
|
||||
'ws:/tête',
|
||||
'ftp:/tête',
|
||||
'http:/tête',
|
||||
'https:/tête',
|
||||
'gopher:/tête',
|
||||
// The schemes "ws:", "ftp:", "http:", "https:" take a shortcut during parsing so we test them separately.
|
||||
'ws://host:tête',
|
||||
'ftp://host:tête',
|
||||
'http://host:tête',
|
||||
'https://host:tête',
|
||||
];
|
||||
|
||||
for (var i = 0; i < testSet.length; ++i) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
CONSOLE ERROR: line 3: Unsafe attempt to initiate navigation for frame with URL 'http://127.0.0.1:8000/security/no-popup-from-sandbox-top.html' from frame with URL 'data:text/html,%0A <script>%0A var win = window.open('about:blank', '_top');%0A console.log(win ? 'FAIL' : 'PASS');%0A </script>'. The frame attempting navigation of the top-level window is sandboxed, but the flag of 'allow-top-navigation' or 'allow-top-navigation-by-user-activation' is not set.
|
||||
CONSOLE ERROR: line 3: Unsafe attempt to initiate navigation for frame with URL 'http://127.0.0.1:8000/security/no-popup-from-sandbox-top.html' from frame with URL 'data:text/html,%0A <script>%0A var win = window.open('about:blank', '_top');%0A console.log(win ?%20%27FAIL%27%20:%20%27PASS%27);%0A%20%20%20%20%20%20%20%3C/script%3E'. The frame attempting navigation of the top-level window is sandboxed, but the flag of 'allow-top-navigation' or 'allow-top-navigation-by-user-activation' is not set.
|
||||
|
||||
CONSOLE MESSAGE: line 4: PASS
|
||||
To run this test outside of DumpRenderTree, please disable your popup blocker!
|
||||
|
@ -13,17 +13,16 @@ FAIL src should be foo://user:tête à tête@host/. Was foo://user:t%C3%AAte %C3
|
||||
PASS src is expected
|
||||
PASS src is expected
|
||||
FAIL src should be foo://user:password@[xxxxx]/tête à tête/. Was foo://user:password@[xxxxx]/t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête]/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte]/.
|
||||
FAIL src should be foo://user:password@[?tête à tête/. Was foo://user:password@[?t%C3%AAte%20%C3%A0%20t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête]/. Was foo://user:password@[?t%C3%AAte%20%C3%A0%20t%C3%AAte]/.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be ws:/tête. Was ws://xn--tte-fma/.
|
||||
FAIL src should be ftp:/tête. Was ftp://xn--tte-fma/.
|
||||
FAIL src should be http:/tête. Was http://127.0.0.1:8000/t%C3%AAte.
|
||||
FAIL src should be https:/tête. Was https://xn--tte-fma/.
|
||||
FAIL src should be gopher:/tête. Was gopher://xn--tte-fma/.
|
||||
FAIL src should be ws://host:tête. Was ws://host:t%C3%AAte/.
|
||||
FAIL src should be ftp://host:tête. Was ftp://host:t%C3%AAte/.
|
||||
FAIL src should be http://host:tête. Was http://host:t%C3%AAte/.
|
||||
FAIL src should be https://host:tête. Was https://host:t%C3%AAte/.
|
||||
PASS successfullyParsed is true
|
||||
|
||||
TEST COMPLETE
|
||||
|
@ -1,30 +0,0 @@
|
||||
This ensure we do not mess up the bytes when an URL is partially parsed and is invalid.
|
||||
|
||||
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
|
||||
|
||||
FAIL src should be http:///. Was http:.
|
||||
FAIL src should be https:///. Was https:.
|
||||
FAIL src should be ftp:///. Was ftp:.
|
||||
PASS src is expected
|
||||
FAIL src should be ws:///. Was ws:.
|
||||
FAIL src should be wss:///. Was wss:.
|
||||
FAIL src should be foo://tête à tête@host/. Was foo://t%C3%AAte %C3%A0 t%C3%AAte@host/.
|
||||
FAIL src should be foo://user:tête à tête@host/. Was foo://user:t%C3%AAte %C3%A0 t%C3%AAte@host/.
|
||||
PASS src is expected
|
||||
PASS src is expected
|
||||
FAIL src should be foo://user:password@[xxxxx]/tête à tête/. Was foo://user:password@[xxxxx]/t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@[?tête à tête]/. Was foo://user:password@[?t%C3%AAte %C3%A0 t%C3%AAte]/.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be foo://user:password@host:tête à tête/. Was foo://user:password@host:t%C3%AAte %C3%A0 t%C3%AAte/.
|
||||
FAIL src should be foo://user:password@host:80tête à tête. Was foo://user:password@host:80t%C3%AAte %C3%A0 t%C3%AAte.
|
||||
FAIL src should be ws:/tête. Was ws://xn--tte-fma/.
|
||||
FAIL src should be ftp:/tête. Was ftp://xn--tte-fma/.
|
||||
FAIL src should be http:/tête. Was http://127.0.0.1:8000/t%C3%AAte.
|
||||
FAIL src should be https:/tête. Was https://xn--tte-fma/.
|
||||
FAIL src should be gopher:/tête. Was gopher:/t%C3%AAte.
|
||||
PASS successfullyParsed is true
|
||||
|
||||
TEST COMPLETE
|
||||
|
@ -313,7 +313,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -637,7 +637,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
@ -314,7 +314,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -636,7 +636,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-constructor.any-expected.txt
vendored
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-constructor.any-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -722,7 +722,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -722,7 +722,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-setters-a-area.window-expected.txt
vendored
4
third_party/blink/web_tests/platform/linux/external/wpt/url/url-setters-a-area.window-expected.txt
vendored
@ -410,9 +410,9 @@ PASS <area>: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS <a>: Setting <https://example.net>.search = ''
|
||||
PASS <area>: Setting <https://example.net>.search = ''
|
||||
FAIL <a>: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
FAIL <area>: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS <a>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS <area>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS <a>: Setting <https://example.net>.hash = 'main'
|
||||
|
@ -206,7 +206,7 @@ PASS URL: Setting <https://example.net?lang=en-US#nav>.search = ''
|
||||
PASS URL: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS URL: Setting <https://example.net>.search = ''
|
||||
FAIL URL: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS URL: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS URL: Setting <https://example.net>.hash = 'main'
|
||||
PASS URL: Setting <https://example.net#nav>.hash = 'main'
|
||||
|
2
third_party/blink/web_tests/platform/linux/external/wpt/url/url-setters.any.worker-expected.txt
vendored
2
third_party/blink/web_tests/platform/linux/external/wpt/url/url-setters.any.worker-expected.txt
vendored
@ -206,7 +206,7 @@ PASS URL: Setting <https://example.net?lang=en-US#nav>.search = ''
|
||||
PASS URL: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS URL: Setting <https://example.net>.search = ''
|
||||
FAIL URL: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS URL: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS URL: Setting <https://example.net>.hash = 'main'
|
||||
PASS URL: Setting <https://example.net#nav>.hash = 'main'
|
||||
|
@ -313,7 +313,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -637,7 +637,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
@ -314,7 +314,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -636,7 +636,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-constructor.any-expected.txt
vendored
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-constructor.any-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -722,7 +722,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -722,7 +722,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-setters-a-area.window-expected.txt
vendored
4
third_party/blink/web_tests/platform/mac/external/wpt/url/url-setters-a-area.window-expected.txt
vendored
@ -410,9 +410,9 @@ PASS <area>: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS <a>: Setting <https://example.net>.search = ''
|
||||
PASS <area>: Setting <https://example.net>.search = ''
|
||||
FAIL <a>: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
FAIL <area>: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS <a>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS <area>: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS <a>: Setting <https://example.net>.hash = 'main'
|
||||
|
@ -206,7 +206,7 @@ PASS URL: Setting <https://example.net?lang=en-US#nav>.search = ''
|
||||
PASS URL: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS URL: Setting <https://example.net>.search = ''
|
||||
FAIL URL: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS URL: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS URL: Setting <https://example.net>.hash = 'main'
|
||||
PASS URL: Setting <https://example.net#nav>.hash = 'main'
|
||||
|
2
third_party/blink/web_tests/platform/mac/external/wpt/url/url-setters.any.worker-expected.txt
vendored
2
third_party/blink/web_tests/platform/mac/external/wpt/url/url-setters.any.worker-expected.txt
vendored
@ -206,7 +206,7 @@ PASS URL: Setting <https://example.net?lang=en-US#nav>.search = ''
|
||||
PASS URL: Setting <https://example.net?lang=en-US>.search = ''
|
||||
PASS URL: Setting <https://example.net>.search = ''
|
||||
FAIL URL: Setting <a:/>.search = '\0
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F !\"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
\r !"#$%&'()*+,-./09:;<=>?@AZ[\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed. assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "a:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
|
||||
PASS URL: Setting <http://example.net>.search = '%c3%89té' Bytes already percent-encoded are left as-is
|
||||
PASS URL: Setting <https://example.net>.hash = 'main'
|
||||
PASS URL: Setting <https://example.net#nav>.hash = 'main'
|
||||
|
@ -313,7 +313,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -637,7 +637,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
@ -314,7 +314,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -636,7 +636,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "wss://!\"$&'()*+,-.;=_`{}~/" but got "wss://%21%22%24%26%27%28%29%2A+%2C-.%3B%3D_%60%7B%7D%7E/"
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/win/external/wpt/url/url-constructor.any-expected.txt
vendored
4
third_party/blink/web_tests/platform/win/external/wpt/url/url-constructor.any-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -730,7 +730,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
4
third_party/blink/web_tests/platform/win/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
4
third_party/blink/web_tests/platform/win/external/wpt/url/url-constructor.any.worker-expected.txt
vendored
@ -340,7 +340,7 @@ PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
|
||||
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
|
||||
PASS Parsing: <http://host/?'> against <about:blank>
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
FAIL Parsing: <notspecial://host/?'> against <about:blank> assert_equals: href expected "notspecial://host/?'" but got "notspecial://host/?%27"
|
||||
PASS Parsing: </some/path> against <http://user@example.org/smth>
|
||||
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
|
||||
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
|
||||
@ -730,7 +730,7 @@ FAIL Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals:
|
||||
FAIL Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank> Failed to construct 'URL': Invalid URL
|
||||
FAIL Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/%20!%22$%&'()*+,-./:;%3C=%3E@[\\]^_%60%7B|%7D~" but got "foo://host/ !\"$%&'()*+,-./:;<=>@[\\]^_`{|}~"
|
||||
FAIL Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank> assert_equals: href expected "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]^_%60%7B|%7D~" but got "wss://host/%20!%22$%&'()*+,-./:;%3C=%3E@[/]%5E_%60%7B%7C%7D~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/? !\"$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
|
||||
FAIL Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: href expected "foo://host/dir/?%20!%22$%&'()*+,-./:;%3C=%3E?@[\\]^_`{|}~" but got "foo://host/dir/?%20!%22$%&%27()*+,-./:;%3C=%3E?@[\\]^_`{|}~"
|
||||
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
FAIL Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank> assert_equals: host expected "host" but got ""
|
||||
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
|
||||
|
@ -561,12 +561,12 @@ TEST(GURLTest, ClearFragmentOnDataUrl) {
|
||||
GURL url(" data: one ? two # three ");
|
||||
|
||||
// By default the trailing whitespace will have been stripped.
|
||||
EXPECT_EQ("data: one ? two #%20three", url.spec());
|
||||
EXPECT_EQ("data: one ?%20two%20#%20three", url.spec());
|
||||
GURL::Replacements repl;
|
||||
repl.ClearRef();
|
||||
GURL url_no_ref = url.ReplaceComponents(repl);
|
||||
|
||||
EXPECT_EQ("data: one ? two ", url_no_ref.spec());
|
||||
EXPECT_EQ("data: one ?%20two%20", url_no_ref.spec());
|
||||
|
||||
// Importing a parsed URL via this constructor overload will retain trailing
|
||||
// whitespace.
|
||||
@ -574,7 +574,7 @@ TEST(GURLTest, ClearFragmentOnDataUrl) {
|
||||
url_no_ref.parsed_for_possibly_invalid_spec(),
|
||||
url_no_ref.is_valid());
|
||||
EXPECT_EQ(url_no_ref, import_url);
|
||||
EXPECT_EQ(import_url.query(), " two ");
|
||||
EXPECT_EQ(import_url.query(), "%20two%20");
|
||||
}
|
||||
|
||||
TEST(GURLTest, PathForRequest) {
|
||||
@ -862,7 +862,7 @@ TEST(GURLTest, ContentForNonStandardURLs) {
|
||||
{"http://www.example.com/GUID#ref", "www.example.com/GUID"},
|
||||
{"http://me:secret@example.com/GUID/#ref", "me:secret@example.com/GUID/"},
|
||||
{"data:text/html,Question?<div style=\"color: #bad\">idea</div>",
|
||||
"text/html,Question?<div style=\"color: "},
|
||||
"text/html,Question?%3Cdiv%20style=%22color:%20"},
|
||||
|
||||
// TODO(mkwst): This seems like a bug. https://crbug.com/513600
|
||||
{"filesystem:http://example.com/path", "/"},
|
||||
|
@ -63,14 +63,17 @@ bool DoCanonicalizePathURL(const URLComponentSource<CHAR>& source,
|
||||
new_parsed->host.reset();
|
||||
new_parsed->port.reset();
|
||||
|
||||
// Canonicalize path and query via the weaker path URL rules.
|
||||
// Canonicalize path via the weaker path URL rules.
|
||||
//
|
||||
// Note: parsing the path part should never cause a failure, see
|
||||
// https://url.spec.whatwg.org/#cannot-be-a-base-url-path-state
|
||||
DoCanonicalizePathComponent<CHAR, UCHAR>(source.path, parsed.path, '\0',
|
||||
output, &new_parsed->path);
|
||||
DoCanonicalizePathComponent<CHAR, UCHAR>(source.query, parsed.query, '?',
|
||||
output, &new_parsed->query);
|
||||
|
||||
// Similar to mailto:, always use the default UTF-8 charset converter for
|
||||
// query.
|
||||
CanonicalizeQuery(source.query, parsed.query, nullptr, output,
|
||||
&new_parsed->query);
|
||||
|
||||
CanonicalizeRef(source.ref, parsed.ref, output, &new_parsed->ref);
|
||||
|
||||
|
Reference in New Issue
Block a user