summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/meta/url
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/meta/url
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/meta/url')
-rw-r--r--testing/web-platform/meta/url/__dir__.ini4
-rw-r--r--testing/web-platform/meta/url/a-element-origin-xhtml.xhtml.ini18
-rw-r--r--testing/web-platform/meta/url/a-element-origin.html.ini18
-rw-r--r--testing/web-platform/meta/url/a-element-xhtml.xhtml.ini1041
-rw-r--r--testing/web-platform/meta/url/a-element.html.ini1070
-rw-r--r--testing/web-platform/meta/url/data-uri-fragment.html.ini3
-rw-r--r--testing/web-platform/meta/url/failure.html.ini182
-rw-r--r--testing/web-platform/meta/url/idlharness-shadowrealm.window.js.ini112
-rw-r--r--testing/web-platform/meta/url/javascript-urls.window.js.ini2
-rw-r--r--testing/web-platform/meta/url/toascii.window.js.ini3
-rw-r--r--testing/web-platform/meta/url/url-constructor.any.js.ini1673
-rw-r--r--testing/web-platform/meta/url/url-origin.any.js.ini38
-rw-r--r--testing/web-platform/meta/url/url-searchparams.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/url-setters-a-area.window.js.ini118
-rw-r--r--testing/web-platform/meta/url/url-setters-stripping.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/url-setters.any.js.ini548
-rw-r--r--testing/web-platform/meta/url/url-tojson.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlencoded-parser.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-append.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-constructor.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-foreach.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-get.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-getall.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-set.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-sort.any.js.ini7
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-stringifier.any.js.ini7
26 files changed, 4914 insertions, 0 deletions
diff --git a/testing/web-platform/meta/url/__dir__.ini b/testing/web-platform/meta/url/__dir__.ini
new file mode 100644
index 0000000000..ebe8701087
--- /dev/null
+++ b/testing/web-platform/meta/url/__dir__.ini
@@ -0,0 +1,4 @@
+leak-threshold: [default:51200, tab:51200]
+prefs: [network.dns.native-is-localhost:true,
+ network.url.strict_protocol_setter:true,
+ network.url.useDefaultURI:true]
diff --git a/testing/web-platform/meta/url/a-element-origin-xhtml.xhtml.ini b/testing/web-platform/meta/url/a-element-origin-xhtml.xhtml.ini
new file mode 100644
index 0000000000..15907c1cdc
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element-origin-xhtml.xhtml.ini
@@ -0,0 +1,18 @@
+[a-element-origin-xhtml.xhtml]
+ [Parsing origin: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:blob:https://example.org/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:ftp://host/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:ws://example.org/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:wss://example.org/> against <about:blank>]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/a-element-origin.html.ini b/testing/web-platform/meta/url/a-element-origin.html.ini
new file mode 100644
index 0000000000..54d576b732
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element-origin.html.ini
@@ -0,0 +1,18 @@
+[a-element-origin.html]
+ [Parsing origin: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:blob:https://example.org/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:ftp://host/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:ws://example.org/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing origin: <blob:wss://example.org/> against <about:blank>]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
new file mode 100644
index 0000000000..7ef952c87e
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
@@ -0,0 +1,1041 @@
+[a-element-xhtml.xhtml]
+ [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:/bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:////://///> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <c:/foo> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <ftps:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <gopher:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <javascript:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <mailto:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <ftps:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <gopher:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <javascript:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <mailto:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:text/html,test#test> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:70/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ftps:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ftps:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <#> against <test:test>]
+ expected: FAIL
+
+ [Parsing: <#x> against <mailto:x@x.com>]
+ expected: FAIL
+
+ [Parsing: <#x> against <data:,>]
+ expected: FAIL
+
+ [Parsing: <#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#> against <test:test?test>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:sd>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:sd/sd>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc:\\../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc::a@example.net> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tel:1234567890> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <non-special://test:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10000000000> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://4294967296> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0xffffffff1> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: <lolscheme:x x#x x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://te@s:t@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:12/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <///> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////x/> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <tftp://foobar.com/someconfig;mode=netascii> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <telnet://user:pass@foobar.com:23/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ut2004://10.10.10.10:7777/Index.ut2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <redis://foo:bar@somehost:6379/0?baz=bam&qux=baz> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <rsync://foo@host:911/sup> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git://github.com/foo/bar.git> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <irc://myserver.com:6999/channel?passwd> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <dns://fw.example.org:9999/foo.bar.org?type=TXT> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ldap://localhost:389/ou=People,o=JNDITutorial> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git+https://github.com/foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <urn:ietf:rfc:2648> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tag:joe@example.org,2001:foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://%E2%80%A0/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://H%4fSt/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:5:0:0:0\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:0:0:0:3\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2::3\]:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:%NBD> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:%1G> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://0x.0x.0> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <blob:https://example.com:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <blob:d3958f5c-0777-0845-9dcf-2cb28783acaf> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <https://0x100000000/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://256.0.0.1/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash.html> against <a:/>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash.html> against <a://>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-b.html> against <a:/b>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash-b.html> against <a://b>]
+ expected: FAIL
+
+ [Parsing: <notspecial://host/?'> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:￿> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <a1234567890-+.:foo/bar> against <http://example.com/dir/file>]
+ expected: FAIL
+
+ [Parsing: <non-spec://example.org/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special:cannot-be-a-base-url-\x00\x01\x1f\x1e~€> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <../path> against <non-spec:/.//p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <foo:// !"$%&'()*+,-.;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss:// !"$%&'()*+,-.;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://joe: !"$%&'()*+,-.:;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://joe: !"$%&'()*+,-.:;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43|/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\tst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\nst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\rst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc://host/path>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc:/path>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc:path>]
+ expected: FAIL
+
+ [Parsing: <abc:/rooted> against <abc://host/path>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300./> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0999999999999999999/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0XFfFfFfFfFfFfFfFfFfAcE123> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://💩.123/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.Xn--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.xN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\x00b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a<b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a>b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a[b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\\b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\]b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a^b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a|b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://\x01\x02\x03\x04\x05\x06\x07\x08\x0b\x0c\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <h://.> against <about:blank>]
+ expected: FAIL
+
+
+[a-element-xhtml.xhtml?include=file]
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <//a/../> against <file:///>]
+ expected: FAIL
+
+
+[a-element-xhtml.xhtml?include=javascript]
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript://example.com:8080/pathname?search#hash> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:///test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript://test/a/../b> against <about:blank>]
+ expected: FAIL
+
+
+[a-element-xhtml.xhtml?exclude=(file|javascript|mailto)]
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data://example.com:8080/pathname?search#hash> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:///test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data://test/a/../b> against <about:blank>]
+ expected: FAIL
+
+
+[a-element-xhtml.xhtml?include=mailto]
diff --git a/testing/web-platform/meta/url/a-element.html.ini b/testing/web-platform/meta/url/a-element.html.ini
new file mode 100644
index 0000000000..94ac66f371
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element.html.ini
@@ -0,0 +1,1070 @@
+[a-element.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:/bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:////://///> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <c:/foo> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <ftps:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <gopher:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <javascript:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <mailto:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <ftps:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <gopher:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <javascript:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <mailto:example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:text/html,test#test> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:70/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ftps:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <madeupscheme:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ftps:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <#> against <test:test>]
+ expected: FAIL
+
+ [Parsing: <#x> against <mailto:x@x.com>]
+ expected: FAIL
+
+ [Parsing: <#x> against <data:,>]
+ expected: FAIL
+
+ [Parsing: <#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#> against <test:test?test>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:sd>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:sd/sd>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:/pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc:\\../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <sc::a@example.net> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tel:1234567890> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <non-special://test:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10000000000> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://4294967296> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0xffffffff1> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: <lolscheme:x x#x x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://te@s:t@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:12/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <///> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////x/> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <tftp://foobar.com/someconfig;mode=netascii> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <telnet://user:pass@foobar.com:23/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ut2004://10.10.10.10:7777/Index.ut2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <redis://foo:bar@somehost:6379/0?baz=bam&qux=baz> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <rsync://foo@host:911/sup> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git://github.com/foo/bar.git> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <irc://myserver.com:6999/channel?passwd> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <dns://fw.example.org:9999/foo.bar.org?type=TXT> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ldap://localhost:389/ou=People,o=JNDITutorial> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git+https://github.com/foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <urn:ietf:rfc:2648> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tag:joe@example.org,2001:foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://%E2%80%A0/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://H%4fSt/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:5:0:0:0\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:0:0:0:3\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2::3\]:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:%NBD> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:%1G> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://0x.0x.0> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <blob:https://example.com:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <blob:d3958f5c-0777-0845-9dcf-2cb28783acaf> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <https://0x100000000/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://256.0.0.1/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash.html> against <a:/>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash.html> against <a://>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-b.html> against <a:/b>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash-b.html> against <a://b>]
+ expected: FAIL
+
+ [Parsing: <notspecial://host/?'> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wow:￿> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <a1234567890-+.:foo/bar> against <http://example.com/dir/file>]
+ expected: FAIL
+
+ [Parsing: <non-spec://example.org/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <non-special:cannot-be-a-base-url-\x00\x01\x1f\x1e~€> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <../path> against <non-spec:/.//p>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <foo:// !"$%&'()*+,-.;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss:// !"$%&'()*+,-.;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://joe: !"$%&'()*+,-.:;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://joe: !"$%&'()*+,-.:;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43|/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\tst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\nst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\rst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc://host/path>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc:/path>]
+ expected: FAIL
+
+ [Parsing: <abc:rootless> against <abc:path>]
+ expected: FAIL
+
+ [Parsing: <abc:/rooted> against <abc://host/path>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300./> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0999999999999999999/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0XFfFfFfFfFfFfFfFfFfAcE123> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://💩.123/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.Xn--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.xN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\x00b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a<b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a>b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a[b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\\b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\]b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a^b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a|b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://\x01\x02\x03\x04\x05\x06\x07\x08\x0b\x0c\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <h://.> against <about:blank>]
+ expected: FAIL
+
+
+[a-element.html?include=javascript]
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript://example.com:8080/pathname?search#hash> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:///test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript://test/a/../b> against <about:blank>]
+ expected: FAIL
+
+
+[a-element.html?include=file]
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <//a/../> against <file:///>]
+ expected: FAIL
+
+
+[a-element.html?exclude=(file|javascript|mailto)]
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data://example.com:8080/pathname?search#hash> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:///test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data://test/a/../b> against <about:blank>]
+ expected: FAIL
+
+
+[a-element.html?include=mailto]
diff --git a/testing/web-platform/meta/url/data-uri-fragment.html.ini b/testing/web-platform/meta/url/data-uri-fragment.html.ini
new file mode 100644
index 0000000000..27e507a2e5
--- /dev/null
+++ b/testing/web-platform/meta/url/data-uri-fragment.html.ini
@@ -0,0 +1,3 @@
+[data-uri-fragment.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/failure.html.ini b/testing/web-platform/meta/url/failure.html.ini
new file mode 100644
index 0000000000..1fff7afa3f
--- /dev/null
+++ b/testing/web-platform/meta/url/failure.html.ini
@@ -0,0 +1,182 @@
+[failure.html]
+ expected:
+ if os == "win": [TIMEOUT, OK]
+ [URL's constructor's base argument: file://example:1/ should throw]
+ expected: FAIL
+
+ [URL's href: file://example:1/ should throw]
+ expected: FAIL
+
+ [XHR: file://example:1/ should throw]
+ expected: FAIL
+
+ [Location's href: file://example:1/ should throw]
+ expected: FAIL
+
+ [window.open(): file://example:1/ should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://example:test/ should throw]
+ expected: FAIL
+
+ [URL's href: file://example:test/ should throw]
+ expected: FAIL
+
+ [XHR: file://example:test/ should throw]
+ expected: FAIL
+
+ [Location's href: file://example:test/ should throw]
+ expected: FAIL
+
+ [window.open(): file://example:test/ should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://example%/ should throw]
+ expected: FAIL
+
+ [URL's href: file://example%/ should throw]
+ expected: FAIL
+
+ [XHR: file://example%/ should throw]
+ expected: FAIL
+
+ [Location's href: file://example%/ should throw]
+ expected: FAIL
+
+ [window.open(): file://example%/ should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://[example\]/ should throw]
+ expected: FAIL
+
+ [URL's href: file://[example\]/ should throw]
+ expected: FAIL
+
+ [XHR: file://[example\]/ should throw]
+ expected: FAIL
+
+ [Location's href: file://[example\]/ should throw]
+ expected: FAIL
+
+ [window.open(): file://[example\]/ should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://%43%3A should throw]
+ expected: FAIL
+
+ [URL's href: file://%43%3A should throw]
+ expected: FAIL
+
+ [XHR: file://%43%3A should throw]
+ expected: FAIL
+
+ [Location's href: file://%43%3A should throw]
+ expected: FAIL
+
+ [window.open(): file://%43%3A should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://%43%7C should throw]
+ expected: FAIL
+
+ [URL's href: file://%43%7C should throw]
+ expected: FAIL
+
+ [XHR: file://%43%7C should throw]
+ expected: FAIL
+
+ [Location's href: file://%43%7C should throw]
+ expected: FAIL
+
+ [window.open(): file://%43%7C should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://%43| should throw]
+ expected: FAIL
+
+ [URL's href: file://%43| should throw]
+ expected: FAIL
+
+ [XHR: file://%43| should throw]
+ expected: FAIL
+
+ [Location's href: file://%43| should throw]
+ expected: FAIL
+
+ [window.open(): file://%43| should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://C%7C should throw]
+ expected: FAIL
+
+ [URL's href: file://C%7C should throw]
+ expected: FAIL
+
+ [XHR: file://C%7C should throw]
+ expected: FAIL
+
+ [Location's href: file://C%7C should throw]
+ expected: FAIL
+
+ [window.open(): file://C%7C should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://%43%7C/ should throw]
+ expected: FAIL
+
+ [URL's href: file://%43%7C/ should throw]
+ expected: FAIL
+
+ [XHR: file://%43%7C/ should throw]
+ expected: FAIL
+
+ [Location's href: file://%43%7C/ should throw]
+ expected: FAIL
+
+ [window.open(): file://%43%7C/ should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://­/p should throw]
+ expected: FAIL
+
+ [URL's href: file://­/p should throw]
+ expected: FAIL
+
+ [XHR: file://­/p should throw]
+ expected: FAIL
+
+ [Location's href: file://­/p should throw]
+ expected: FAIL
+
+ [window.open(): file://­/p should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://%C2%AD/p should throw]
+ expected: FAIL
+
+ [URL's href: file://%C2%AD/p should throw]
+ expected: FAIL
+
+ [XHR: file://%C2%AD/p should throw]
+ expected: FAIL
+
+ [Location's href: file://%C2%AD/p should throw]
+ expected: FAIL
+
+ [window.open(): file://%C2%AD/p should throw]
+ expected: FAIL
+
+ [URL's constructor's base argument: file://xn--/p should throw]
+ expected: FAIL
+
+ [URL's href: file://xn--/p should throw]
+ expected: FAIL
+
+ [XHR: file://xn--/p should throw]
+ expected: FAIL
+
+ [Location's href: file://xn--/p should throw]
+ expected: FAIL
+
+ [window.open(): file://xn--/p should throw]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/idlharness-shadowrealm.window.js.ini b/testing/web-platform/meta/url/idlharness-shadowrealm.window.js.ini
new file mode 100644
index 0000000000..9093453c6a
--- /dev/null
+++ b/testing/web-platform/meta/url/idlharness-shadowrealm.window.js.ini
@@ -0,0 +1,112 @@
+[idlharness-shadowrealm.window.html]
+ prefs: [javascript.options.experimental.shadow_realms:true]
+ [URL interface: existence and properties of interface object]
+ expected: FAIL
+
+ [URL interface object length]
+ expected: FAIL
+
+ [URL interface object name]
+ expected: FAIL
+
+ [URL interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [URL interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [URL interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [URL interface: attribute href]
+ expected: FAIL
+
+ [URL interface: stringifier]
+ expected: FAIL
+
+ [URL interface: attribute origin]
+ expected: FAIL
+
+ [URL interface: attribute protocol]
+ expected: FAIL
+
+ [URL interface: attribute username]
+ expected: FAIL
+
+ [URL interface: attribute password]
+ expected: FAIL
+
+ [URL interface: attribute host]
+ expected: FAIL
+
+ [URL interface: attribute hostname]
+ expected: FAIL
+
+ [URL interface: attribute port]
+ expected: FAIL
+
+ [URL interface: attribute pathname]
+ expected: FAIL
+
+ [URL interface: attribute search]
+ expected: FAIL
+
+ [URL interface: attribute searchParams]
+ expected: FAIL
+
+ [URL interface: attribute hash]
+ expected: FAIL
+
+ [URL interface: operation toJSON()]
+ expected: FAIL
+
+ [URLSearchParams interface: existence and properties of interface object]
+ expected: FAIL
+
+ [URLSearchParams interface object length]
+ expected: FAIL
+
+ [URLSearchParams interface object name]
+ expected: FAIL
+
+ [URLSearchParams interface: existence and properties of interface prototype object]
+ expected: FAIL
+
+ [URLSearchParams interface: existence and properties of interface prototype object's "constructor" property]
+ expected: FAIL
+
+ [URLSearchParams interface: existence and properties of interface prototype object's @@unscopables property]
+ expected: FAIL
+
+ [URLSearchParams interface: operation append(USVString, USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: operation get(USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: operation getAll(USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: operation set(USVString, USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: operation sort()]
+ expected: FAIL
+
+ [URLSearchParams interface: iterable<USVString, USVString>]
+ expected: FAIL
+
+ [URLSearchParams interface: stringifier]
+ expected: FAIL
+
+ [URL interface: operation canParse(USVString, optional USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: attribute size]
+ expected: FAIL
+
+ [URLSearchParams interface: operation delete(USVString, optional USVString)]
+ expected: FAIL
+
+ [URLSearchParams interface: operation has(USVString, optional USVString)]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/javascript-urls.window.js.ini b/testing/web-platform/meta/url/javascript-urls.window.js.ini
new file mode 100644
index 0000000000..7ecd75be3b
--- /dev/null
+++ b/testing/web-platform/meta/url/javascript-urls.window.js.ini
@@ -0,0 +1,2 @@
+[javascript-urls.window.html]
+ expected: ERROR
diff --git a/testing/web-platform/meta/url/toascii.window.js.ini b/testing/web-platform/meta/url/toascii.window.js.ini
new file mode 100644
index 0000000000..ce436e92ab
--- /dev/null
+++ b/testing/web-platform/meta/url/toascii.window.js.ini
@@ -0,0 +1,3 @@
+[toascii.window.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/url-constructor.any.js.ini b/testing/web-platform/meta/url/url-constructor.any.js.ini
new file mode 100644
index 0000000000..d433345efa
--- /dev/null
+++ b/testing/web-platform/meta/url/url-constructor.any.js.ini
@@ -0,0 +1,1673 @@
+[url-constructor.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Parsing: <non-special://test:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:////://///> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:70/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <notspecial://host/?'> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://te@s:t@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:12/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <http://10000000000> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://4294967296> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0xffffffff1> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <https://0x.0x.0> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://0x100000000/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://256.0.0.1/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <sc://?> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://#> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <///> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////x/> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <tftp://foobar.com/someconfig;mode=netascii> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <telnet://user:pass@foobar.com:23/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ut2004://10.10.10.10:7777/Index.ut2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <redis://foo:bar@somehost:6379/0?baz=bam&qux=baz> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <rsync://foo@host:911/sup> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git://github.com/foo/bar.git> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <irc://myserver.com:6999/channel?passwd> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <dns://fw.example.org:9999/foo.bar.org?type=TXT> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ldap://localhost:389/ou=People,o=JNDITutorial> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git+https://github.com/foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <non-special://%E2%80%A0/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://H%4fSt/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:5:0:0:0\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:0:0:0:3\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2::3\]:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash.html> against <a://>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash-b.html> against <a://b>]
+ expected: FAIL
+
+ [Parsing: <non-spec://example.org/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo:// !"$%&'()*+,-.;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss:// !"$%&'()*+,-.;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://joe: !"$%&'()*+,-.:;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://joe: !"$%&'()*+,-.:;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43|/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\tst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\nst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\rst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300./> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0999999999999999999/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0XFfFfFfFfFfFfFfFfFfAcE123> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://💩.123/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.Xn--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.xN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\x00b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a<b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a>b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a[b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\\b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\]b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a^b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a|b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://\x01\x02\x03\x04\x05\x06\x07\x08\x0b\x0c\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <h://.> against <about:blank>]
+ expected: FAIL
+
+
+[url-constructor.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [Parsing: <non-special://test:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://:@test/x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo:////://///> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://example%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:70/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <gopher://foo:443/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <sc://faß.ExAmPlE/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <notspecial://host/?'> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <../i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: </i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <?i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc://ho/pa>]
+ expected: FAIL
+
+ [Parsing: <#i> against <sc:///pa/pa>]
+ expected: FAIL
+
+ [Parsing: <about:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <javascript:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <mailto:/../> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ.test/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://%/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://te@s:t@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://:12/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <http://10000000000> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://4294967296> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0xffffffff1> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <https://0x.0x.0> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://0x100000000/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https://256.0.0.1/test> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://spider///> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> against <about:blank>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ?x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://ñ#x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <?x> against <sc://ñ>]
+ expected: FAIL
+
+ [Parsing: <sc://?> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://#> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <///> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <////x/> against <sc://x/>]
+ expected: FAIL
+
+ [Parsing: <tftp://foobar.com/someconfig;mode=netascii> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <telnet://user:pass@foobar.com:23/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ut2004://10.10.10.10:7777/Index.ut2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <redis://foo:bar@somehost:6379/0?baz=bam&qux=baz> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <rsync://foo@host:911/sup> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git://github.com/foo/bar.git> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <irc://myserver.com:6999/channel?passwd> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <dns://fw.example.org:9999/foo.bar.org?type=TXT> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <ldap://localhost:389/ou=People,o=JNDITutorial> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <git+https://github.com/foo/bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <non-special://%E2%80%A0/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://H%4fSt/path> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:5:0:0:0\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2:0:0:0:0:0:3\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[1:2::3\]:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <non-special://[:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash.html> against <a://>]
+ expected: FAIL
+
+ [Parsing: <test-a-colon-slash-slash-b.html> against <a://b>]
+ expected: FAIL
+
+ [Parsing: <non-spec://example.org/test?a#b\x00c> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a­b/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://­/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo:// !"$%&'()*+,-.;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss:// !"$%&'()*+,-.;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://joe: !"$%&'()*+,-.:;<=>@[\\\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://joe: !"$%&'()*+,-.:;<=>@[\]^_`{|}~@host/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\\\]^_`{|}~> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43|> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43|/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <asdf://%43%7C/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\tst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\nst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <foo://ho\rst/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.4.5.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0..0x300./> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://256.256.256.256.256.> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.08.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://1.2.3.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://09.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://01.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x100.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0x1.2.3.4.5.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.1.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.2.3.4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.09.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x4.> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://0999999999999999999/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0x> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://foo.0XFfFfFfFfFfFfFfFfFfAcE123> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://💩.123/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a.b.c.Xn--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.XN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://10.0.0.xN--pokxncvks> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\x00b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a<b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a>b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a[b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\\b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a\]b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a^b> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://a|b/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc://\x01\x02\x03\x04\x05\x06\x07\x08\x0b\x0c\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!"$%&'()*+,-.;=_`{}~/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <h://.> against <about:blank>]
+ expected: FAIL
+
+
+[url-constructor.any.worker.html?include=javascript]
+ [Parsing: <javascript:/../> without base]
+ expected: FAIL
+
+ [Parsing: <javascript://example.com:8080/pathname?search#hash> without base]
+ expected: FAIL
+
+ [Parsing: <javascript:///test> without base]
+ expected: FAIL
+
+ [Parsing: <javascript://test/a/../b> without base]
+ expected: FAIL
+
+
+[url-constructor.any.worker.html?exclude=(file|javascript|mailto)]
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> without base]
+ expected: FAIL
+
+ [Parsing: <about:/../> without base]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> without base]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> without base]
+ expected: FAIL
+
+ [Parsing: <data:/../> without base]
+ expected: FAIL
+
+ [Parsing: <data://example.com:8080/pathname?search#hash> without base]
+ expected: FAIL
+
+ [Parsing: <data:///test> without base]
+ expected: FAIL
+
+ [Parsing: <data://test/a/../b> without base]
+ expected: FAIL
+
+
+[url-constructor.any.html?include=file]
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> without base]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> without base]
+ expected: FAIL
+
+ [Parsing: <file://example%/> without base]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43|> without base]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> without base]
+ expected: FAIL
+
+ [Parsing: <file://spider///> without base]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> without base]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> without base]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://a­b/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://­/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> without base]
+ expected: FAIL
+
+ [Parsing: <//a/../> against <file:///>]
+ expected: FAIL
+
+
+[url-constructor.any.worker.html?include=file]
+ [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <//server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: </\\server/file> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file://test> against <file:///tmp/mock/path>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <..> against <file:///C:/>]
+ expected: FAIL
+
+ [Parsing: </> against <file:///C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/C:/a/b>]
+ expected: FAIL
+
+ [Parsing: </> against <file://h/a/b>]
+ expected: FAIL
+
+ [Parsing: <//d:> against <file:///C:/a/b>]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: </..//localhost//pig> against <file://lion/>]
+ expected: FAIL
+
+ [Parsing: </rooibos> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: </?chai> against <file://tea/>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|> against <file://host/D:/dir1/dir2/file>]
+ expected: FAIL
+
+ [Parsing: <C|#> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|?> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\n/> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|\\> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: <C|a> against <file://host/dir/file>]
+ expected: FAIL
+
+ [Parsing: </c:/foo/bar> against <file://host/path>]
+ expected: FAIL
+
+ [Parsing: <C|/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: </C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <file:/C:/> against <file://host/>]
+ expected: FAIL
+
+ [Parsing: <//one/two> against <file:///>]
+ expected: FAIL
+
+ [Parsing: <file://example:1/> without base]
+ expected: FAIL
+
+ [Parsing: <file://example:test/> without base]
+ expected: FAIL
+
+ [Parsing: <file://example%/> without base]
+ expected: FAIL
+
+ [Parsing: <file://[example\]/> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%3A> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43|> without base]
+ expected: FAIL
+
+ [Parsing: <file://C%7C> without base]
+ expected: FAIL
+
+ [Parsing: <file://%43%7C/> without base]
+ expected: FAIL
+
+ [Parsing: <file://spider///> without base]
+ expected: FAIL
+
+ [Parsing: <file://example.net/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file://1.2.3.4/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file://[1::8\]/C:/> without base]
+ expected: FAIL
+
+ [Parsing: <file:///Y:> without base]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file:///y:> without base]
+ expected:
+ if os == "win": FAIL
+
+ [Parsing: <file://a­b/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://a%C2%ADb/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://­/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://%C2%AD/p> without base]
+ expected: FAIL
+
+ [Parsing: <file://xn--/p> without base]
+ expected: FAIL
+
+ [Parsing: <//a/../> against <file:///>]
+ expected: FAIL
+
+
+[url-constructor.any.html?exclude=(file|javascript|mailto)]
+ [Parsing: </.//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: </..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <a/..//path> against <non-spec:/p>]
+ expected: FAIL
+
+ [Parsing: <> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <path> against <non-spec:/..//p>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> without base]
+ expected: FAIL
+
+ [Parsing: <about:/../> without base]
+ expected: FAIL
+
+ [Parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/.//path> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/..//path> without base]
+ expected: FAIL
+
+ [Parsing: <non-spec:/a/..//path> without base]
+ expected: FAIL
+
+ [Parsing: <wss://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\\\]^_`{|}~> without base]
+ expected: FAIL
+
+ [Parsing: <data:/../> without base]
+ expected: FAIL
+
+ [Parsing: <data://example.com:8080/pathname?search#hash> without base]
+ expected: FAIL
+
+ [Parsing: <data:///test> without base]
+ expected: FAIL
+
+ [Parsing: <data://test/a/../b> without base]
+ expected: FAIL
+
+
+[url-constructor.any.html?include=javascript]
+ [Parsing: <javascript:/../> without base]
+ expected: FAIL
+
+ [Parsing: <javascript://example.com:8080/pathname?search#hash> without base]
+ expected: FAIL
+
+ [Parsing: <javascript:///test> without base]
+ expected: FAIL
+
+ [Parsing: <javascript://test/a/../b> without base]
+ expected: FAIL
+
+
+[url-constructor.any.html?include=mailto]
+
+[url-constructor.any.worker.html?include=mailto]
diff --git a/testing/web-platform/meta/url/url-origin.any.js.ini b/testing/web-platform/meta/url/url-origin.any.js.ini
new file mode 100644
index 0000000000..a45cfeb797
--- /dev/null
+++ b/testing/web-platform/meta/url/url-origin.any.js.ini
@@ -0,0 +1,38 @@
+[url-origin.any.html]
+ [Origin parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Origin parsing: <wss://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:blob:https://example.org/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:ftp://host/path> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:ws://example.org/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:wss://example.org/> without base]
+ expected: FAIL
+
+
+[url-origin.any.worker.html]
+ [Origin parsing: <http://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Origin parsing: <wss://!"$&'()*+,-.;=_`{}~/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:blob:https://example.org/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:ftp://host/path> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:ws://example.org/> without base]
+ expected: FAIL
+
+ [Origin parsing: <blob:wss://example.org/> without base]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/url-searchparams.any.js.ini b/testing/web-platform/meta/url/url-searchparams.any.js.ini
new file mode 100644
index 0000000000..52199c1b11
--- /dev/null
+++ b/testing/web-platform/meta/url/url-searchparams.any.js.ini
@@ -0,0 +1,7 @@
+[url-searchparams.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[url-searchparams.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/url-setters-a-area.window.js.ini b/testing/web-platform/meta/url/url-setters-a-area.window.js.ini
new file mode 100644
index 0000000000..f5c7d2dbff
--- /dev/null
+++ b/testing/web-platform/meta/url/url-setters-a-area.window.js.ini
@@ -0,0 +1,118 @@
+[url-setters-a-area.window.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[url-setters-a-area.window.html?include=javascript]
+ [<a>: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [<area>: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [<a>: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [<area>: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [<a>: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+ [<area>: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+
+[url-setters-a-area.window.html?include=mailto]
+
+[url-setters-a-area.window.html?exclude=(file|javascript|mailto)]
+ [<a>: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [<area>: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [<a>: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [<area>: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [<a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [<area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [<a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [<area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [<a>: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [<area>: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [<a>: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [<area>: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [<a>: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+ [<area>: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+ [<a>: Setting <data:space ?query#fragment>.search = '' Do not drop trailing spaces from non-trailing opaque paths]
+ expected: FAIL
+
+ [<area>: Setting <data:space ?query#fragment>.search = '' Do not drop trailing spaces from non-trailing opaque paths]
+ expected: FAIL
+
+
+[url-setters-a-area.window.html?include=file]
+ [<a>: Setting <file://hi/path>.protocol = 's']
+ expected: FAIL
+
+ [<area>: Setting <file://hi/path>.protocol = 's']
+ expected: FAIL
+
+ [<a>: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [<area>: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [<a>: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [<area>: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [<a>: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [<area>: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [<a>: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [<area>: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [<a>: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [<area>: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [<a>: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
+
+ [<area>: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
diff --git a/testing/web-platform/meta/url/url-setters-stripping.any.js.ini b/testing/web-platform/meta/url/url-setters-stripping.any.js.ini
new file mode 100644
index 0000000000..be089f82bf
--- /dev/null
+++ b/testing/web-platform/meta/url/url-setters-stripping.any.js.ini
@@ -0,0 +1,7 @@
+[url-setters-stripping.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[url-setters-stripping.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/url-setters.any.js.ini b/testing/web-platform/meta/url/url-setters.any.js.ini
new file mode 100644
index 0000000000..754c4608d7
--- /dev/null
+++ b/testing/web-platform/meta/url/url-setters.any.js.ini
@@ -0,0 +1,548 @@
+[url-setters.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [URL: Setting <http://test@example.net>.protocol = 'file' Can’t switch from URL containing username/password/port to file]
+ expected: FAIL
+
+ [URL: Setting <http://example.net>.username = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the userinfo encode set.]
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [URL: Setting <http://example.net>.password = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the userinfo encode set.]
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\x00' Non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\t']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\n']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\r']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = ' ']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '#']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '/']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '?']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '@']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = 'ß']
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/foo>.host = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [URL: Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/path>.host = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts]
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <sc://test@test/>.host = '']
+ expected: FAIL
+
+ [URL: Setting <sc://test:12/>.host = '']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\x00' Non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\t']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\n']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\r']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = ' ']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '#']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '/']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '?']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '@']
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/foo>.hostname = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [URL: Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/path>.hostname = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts]
+ expected: FAIL
+
+ [URL: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <sc://test@test/>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <sc://test:12/>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = '']
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [URL: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <unix:/run/foo.socket?timeout=10>.pathname = '/var/log/../run/bar.socket']
+ expected: FAIL
+
+ [URL: Setting <http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is a segment delimiter for 'special' URLs]
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <a:/>.pathname = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.]
+ expected: FAIL
+
+ [URL: Setting <sc://example.net>.pathname = '?' ? needs to be encoded, non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://example.net>.pathname = '#' # needs to be encoded, non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
+
+ [URL: Setting <file:///unicorn>.pathname = '//\\/' File URLs and (back)slashes]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <a:/>.search = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed.]
+ expected: FAIL
+
+ [URL: Setting <a:/>.hash = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' Simple percent-encoding; tabs and newlines are removed]
+ expected: FAIL
+
+ [URL: Setting <sc://example.com/>.host = '///bad.com' Leading / is not stripped]
+ expected: FAIL
+
+ [URL: Setting <sc://example.com/>.hostname = '///bad.com' Leading / is not stripped]
+ expected: FAIL
+
+ [URL: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:/some/path>.pathname = '' Path-only URLs cannot have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:/some/path>.pathname = 'test' Path-only URLs always have an initial slash]
+ expected: FAIL
+
+ [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+ [URL: Setting <sc:/nospace>.pathname = 'space ']
+ expected: FAIL
+
+
+[url-setters.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+ [URL: Setting <http://example.net>.username = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the userinfo encode set.]
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [URL: Setting <http://example.net>.password = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the userinfo encode set.]
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\x00' Non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\t']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\n']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '\r']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = ' ']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '#']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '/']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '?']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = '@']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.host = 'ß']
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/foo>.host = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [URL: Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/path>.host = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts]
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <sc://test@test/>.host = '']
+ expected: FAIL
+
+ [URL: Setting <sc://test:12/>.host = '']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\x00' Non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\t']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\n']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '\r']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = ' ']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '#']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '/']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '?']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.hostname = '@']
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/foo>.hostname = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [URL: Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [URL: Setting <view-source+http://example.net/path>.hostname = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, but still forbidden in hosts]
+ expected: FAIL
+
+ [URL: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <sc://test@test/>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <sc://test:12/>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = '']
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [URL: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <sc://x/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <unix:/run/foo.socket?timeout=10>.pathname = '/var/log/../run/bar.socket']
+ expected: FAIL
+
+ [URL: Setting <http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is a segment delimiter for 'special' URLs]
+ expected: FAIL
+
+ [URL: 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]
+ expected: FAIL
+
+ [URL: Setting <a:/>.pathname = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.]
+ expected: FAIL
+
+ [URL: Setting <sc://example.net>.pathname = '?' ? needs to be encoded, non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <sc://example.net>.pathname = '#' # needs to be encoded, non-special scheme]
+ expected: FAIL
+
+ [URL: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
+
+ [URL: Setting <file:///unicorn>.pathname = '//\\/' File URLs and (back)slashes]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <a:/>.search = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed.]
+ expected: FAIL
+
+ [URL: Setting <a:/>.hash = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' Simple percent-encoding; tabs and newlines are removed]
+ expected: FAIL
+
+ [URL: Setting <sc://example.com/>.host = '///bad.com' Leading / is not stripped]
+ expected: FAIL
+
+ [URL: Setting <sc://example.com/>.hostname = '///bad.com' Leading / is not stripped]
+ expected: FAIL
+
+ [URL: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:/some/path>.pathname = '' Path-only URLs cannot have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:/some/path>.pathname = 'test' Path-only URLs always have an initial slash]
+ expected: FAIL
+
+ [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+ [URL: Setting <sc:/nospace>.pathname = 'space ']
+ expected: FAIL
+
+
+[url-setters.any.html?include=javascript]
+ [URL: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+
+[url-setters.any.worker.html?exclude=(file|javascript|mailto)]
+ [URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [URL: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+
+[url-setters.any.html?include=file]
+ [URL: Setting <file://hi/path>.protocol = 's']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [URL: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
+
+
+[url-setters.any.worker.html?include=javascript]
+ [URL: Setting <javascript://x/>.username = 'wario']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.password = 'bowser']
+ expected: FAIL
+
+ [URL: Setting <javascript://x/>.port = '12']
+ expected: FAIL
+
+
+[url-setters.any.html?exclude=(file|javascript|mailto)]
+ [URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//p>.hostname = '']
+ expected: FAIL
+
+ [URL: Setting <non-special://example.net:8080/path>.port = '65536' Port numbers are 16 bit integers, overflowing is an error]
+ expected: FAIL
+
+ [URL: Setting <foo://somehost/some/path>.pathname = '' Non-special URLs can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path]
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '/..//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/>.pathname = '//p']
+ expected: FAIL
+
+ [URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path]
+ expected: FAIL
+
+ [URL: Setting <data:/nospace>.pathname = 'space ' Non-special URLs with non-opaque paths percent-encode U+0020]
+ expected: FAIL
+
+
+[url-setters.any.worker.html?include=file]
+ [URL: Setting <file://hi/path>.protocol = 's']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.username = 'test']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.password = 'test']
+ expected: FAIL
+
+ [URL: Setting <file://y/>.host = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <file://y/>.hostname = 'x:123']
+ expected: FAIL
+
+ [URL: Setting <file://test/>.port = '12']
+ expected: FAIL
+
+ [URL: Setting <file://monkey/>.pathname = '\\\\' File URLs and (back)slashes]
+ expected: FAIL
+
+
+[url-setters.any.html?include=mailto]
+
+[url-setters.any.worker.html?include=mailto]
diff --git a/testing/web-platform/meta/url/url-tojson.any.js.ini b/testing/web-platform/meta/url/url-tojson.any.js.ini
new file mode 100644
index 0000000000..49b21c3abd
--- /dev/null
+++ b/testing/web-platform/meta/url/url-tojson.any.js.ini
@@ -0,0 +1,7 @@
+[url-tojson.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[url-tojson.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlencoded-parser.any.js.ini b/testing/web-platform/meta/url/urlencoded-parser.any.js.ini
new file mode 100644
index 0000000000..f9c7288181
--- /dev/null
+++ b/testing/web-platform/meta/url/urlencoded-parser.any.js.ini
@@ -0,0 +1,7 @@
+[urlencoded-parser.any.worker.html]
+ expected:
+ if (os == "android") and fission: [TIMEOUT, OK]
+
+[urlencoded-parser.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-append.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-append.any.js.ini
new file mode 100644
index 0000000000..e86d059193
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-append.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-append.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-append.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-constructor.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-constructor.any.js.ini
new file mode 100644
index 0000000000..4e771bca95
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-constructor.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-constructor.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-constructor.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-foreach.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-foreach.any.js.ini
new file mode 100644
index 0000000000..24b1e2db33
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-foreach.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-foreach.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-foreach.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-get.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-get.any.js.ini
new file mode 100644
index 0000000000..1c7b486c77
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-get.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-get.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-get.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-getall.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-getall.any.js.ini
new file mode 100644
index 0000000000..7e0f092935
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-getall.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-getall.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-getall.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-set.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-set.any.js.ini
new file mode 100644
index 0000000000..baadea85cc
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-set.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-set.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-set.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-sort.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-sort.any.js.ini
new file mode 100644
index 0000000000..f1c2464868
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-sort.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-sort.any.html]
+ expected:
+ if (os == "android") and fission: [TIMEOUT, OK]
+
+[urlsearchparams-sort.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
diff --git a/testing/web-platform/meta/url/urlsearchparams-stringifier.any.js.ini b/testing/web-platform/meta/url/urlsearchparams-stringifier.any.js.ini
new file mode 100644
index 0000000000..eb46396a1e
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-stringifier.any.js.ini
@@ -0,0 +1,7 @@
+[urlsearchparams-stringifier.any.worker.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]
+
+[urlsearchparams-stringifier.any.html]
+ expected:
+ if (os == "android") and fission: [OK, TIMEOUT]