summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/meta/url
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /testing/web-platform/meta/url
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/web-platform/meta/url')
-rw-r--r--testing/web-platform/meta/url/a-element-xhtml.xhtml.ini437
-rw-r--r--testing/web-platform/meta/url/a-element.html.ini446
-rw-r--r--testing/web-platform/meta/url/interfaces.html.ini14
-rw-r--r--testing/web-platform/meta/url/url-constructor.html.ini224
-rw-r--r--testing/web-platform/meta/url/url-domainToUnicode.html.ini11
-rw-r--r--testing/web-platform/meta/url/url-setters.html.ini122
-rw-r--r--testing/web-platform/meta/url/urlsearchparams-constructor.html.ini5
7 files changed, 1259 insertions, 0 deletions
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 000000000..7edb3800a
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element-xhtml.xhtml.ini
@@ -0,0 +1,437 @@
+[a-element-xhtml.xhtml]
+ type: testharness
+ [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:b/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f: /c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:fifty-two/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f: 21 / b ? d # e > against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http::@c:29> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://::@c@d:2> 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: <http://[1::2\]:3:4> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1\]> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1\]:80> 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: <#β> 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: </C|\\foo\\bar> 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://www.google.com/foo?bar=baz# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:test# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://[www.google.com\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://user:pass@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://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::b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://user@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http::@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <http://example example.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://Goo%20 goo%7C|.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://[\]> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://[:\]> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://GOO  goo.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://﷐zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%b7%90zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%41.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%00.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://你好你好> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%zz%66%a.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%25> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://hello%00> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%3g%78%63%30%2e%30%32%35%30%2E.01> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.1 hello> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://[google.com\]> 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: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: <../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: </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: <?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: <#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: <http://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://www/foo%2Ehtml> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc::a@example.net> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:> against <https://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e%2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tel:1234567890> against <http://example.org/foo/bar>]
+ expected: FAIL
+
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 000000000..6c1606a49
--- /dev/null
+++ b/testing/web-platform/meta/url/a-element.html.ini
@@ -0,0 +1,446 @@
+[a-element.html]
+ type: testharness
+ [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:b/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f: /c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:fifty-two/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f: 21 / b ? d # e > against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http::@c:29> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://::@c@d:2> 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: <http://[1::2\]:3:4> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1\]> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://2001::1\]:80> 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: </C|\\foo\\bar> 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: <http://[www.google.com\]/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://user:pass@/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <httpa://foo:80/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://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::b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://user@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <https:@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://a:b@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http::@/www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://@:www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example example.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://Goo%20 goo%7C|.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://GOO  goo.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://﷐zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%b7%90zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%41.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%00.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://你好你好> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%zz%66%a.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%25> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://hello%00> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%3g%78%63%30%2e%30%32%35%30%2E.01> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.1 hello> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://[google.com\]> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <x> against <test:test>]
+ expected: FAIL
+
+ [Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <#β> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://www.google.com/foo?bar=baz# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <#β> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://www.google.com/foo?bar=baz# »> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://[\]> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://[:\]> 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: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: <../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: </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: <?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: <#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: <http://f:999999/c> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://www/foo%2Ehtml> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <sc::a@example.net> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:> against <https://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e%2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <tel:1234567890> against <http://example.org/foo/bar>]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/url/interfaces.html.ini b/testing/web-platform/meta/url/interfaces.html.ini
new file mode 100644
index 000000000..5797a138b
--- /dev/null
+++ b/testing/web-platform/meta/url/interfaces.html.ini
@@ -0,0 +1,14 @@
+[interfaces.html]
+ type: testharness
+ [URL interface: operation domainToASCII(ScalarValueString)]
+ expected: FAIL
+
+ [URL interface: operation domainToUnicode(ScalarValueString)]
+ expected: FAIL
+
+ [URL interface: operation domainToASCII(USVString)]
+ expected: FAIL
+
+ [URL interface: operation domainToUnicode(USVString)]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/url/url-constructor.html.ini b/testing/web-platform/meta/url/url-constructor.html.ini
new file mode 100644
index 000000000..6da03043b
--- /dev/null
+++ b/testing/web-platform/meta/url/url-constructor.html.ini
@@ -0,0 +1,224 @@
+[url-constructor.html]
+ type: testharness
+ [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <foo://> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http::@c:29> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <http://::@c@d:2> 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: <gopher:/example.com/> against <http://example.org/foo/bar>]
+ expected: FAIL
+
+ [Parsing: <data:/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: <#β> 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: </C|\\foo\\bar> 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://www.google.com/foo?bar=baz# »> against <about:blank>]
+ 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: <gopher:/example.com/> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <data:/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: <http::b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:/:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:b@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://www.@pple.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://:@www.example.com> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://﷐zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%b7%90zyx.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%41.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%00.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://你好你好> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%zz%66%a.com> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%25> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://hello%00> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://192.168.0.257> against <http://other.com/>]
+ expected: FAIL
+
+ [Parsing: <http://%3g%78%63%30%2e%30%32%35%30%2E.01> against <http://other.com/>]
+ 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://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: <file:..> against <http://www.example.com/test>]
+ expected: FAIL
+
+ [Parsing: <http://www/foo%2Ehtml> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e%2> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar> against <about:blank>]
+ expected: FAIL
+
+ [Parsing: <http:> against <https://example.org/foo/bar>]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/url/url-domainToUnicode.html.ini b/testing/web-platform/meta/url/url-domainToUnicode.html.ini
new file mode 100644
index 000000000..c690a665f
--- /dev/null
+++ b/testing/web-platform/meta/url/url-domainToUnicode.html.ini
@@ -0,0 +1,11 @@
+[url-domainToUnicode.html]
+ type: testharness
+ [URL.domainToUnicode valid input]
+ expected: FAIL
+
+ [URL.domainToUnicode valid encoded input]
+ expected: FAIL
+
+ [URL.domainToUnicode invalid input]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/url/url-setters.html.ini b/testing/web-platform/meta/url/url-setters.html.ini
new file mode 100644
index 000000000..e2ff65858
--- /dev/null
+++ b/testing/web-platform/meta/url/url-setters.html.ini
@@ -0,0 +1,122 @@
+[url-setters.html]
+ type: testharness
+ [Setting <a://example.net>.protocol = '' The empty string is not a valid scheme. Setter leaves the URL unchanged.]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'b']
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'B' Upper-case ASCII is lower-cased]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'é' Non-ASCII is rejected]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = '0b' No leading digit]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = '+b' No leading punctuation]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'bC0+-.']
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'b,c' Only some punctuation is acceptable]
+ expected: FAIL
+
+ [Setting <a://example.net>.protocol = 'bé' Non-ASCII is rejected]
+ expected: FAIL
+
+ [Setting <http://example.net>.protocol = 'b' Can’t switch from special scheme to non-special. Note: this may change, see https://github.com/whatwg/url/issues/104]
+ expected: FAIL
+
+ [Setting <mailto:me@example.net>.protocol = 'http' Cannot-be-a-base URL doesn’t have a host, but URL in a special scheme must.]
+ expected: FAIL
+
+ [Setting <ssh://me@example.net>.protocol = 'http' Can’t switch from non-special scheme to special. Note: this may change, see https://github.com/whatwg/url/issues/104]
+ expected: FAIL
+
+ [Setting <http://:secret@example.net>.username = 'me']
+ expected: FAIL
+
+ [Setting <http://me:secret@example.net>.username = '']
+ expected: FAIL
+
+ [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
+
+ [Setting <http://example.net>.password = 'secret']
+ expected: FAIL
+
+ [Setting <http://:secret@example.net>.password = '']
+ expected: FAIL
+
+ [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
+
+ [Setting <http://example.net>.password = '%c3%89té' Bytes already percent-encoded are left as-is.]
+ expected: FAIL
+
+ [Setting <view-source+http://example.net/foo>.host = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [Setting <http://example.net>.host = '[::0:01\]:2' IPv6 address syntax is normalized]
+ expected: FAIL
+
+ [Setting <view-source+http://example.net/path>.host = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, and it’s invalid in a domain]
+ expected: FAIL
+
+ [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
+
+ [Setting <view-source+http://example.net/foo>.hostname = '' The empty host is OK for non-special schemes]
+ expected: FAIL
+
+ [Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host]
+ expected: FAIL
+
+ [Setting <http://example.net>.hostname = '[::0:01\]' IPv6 address syntax is normalized]
+ expected: FAIL
+
+ [Setting <http://example.net/path>.hostname = 'example.com:8080' Stuff after a : delimiter is ignored]
+ expected: FAIL
+
+ [Setting <http://example.net:8080/path>.hostname = 'example.com:' Stuff after a : delimiter is ignored]
+ expected: FAIL
+
+ [Setting <view-source+http://example.net/path>.hostname = 'example.com\\stuff' \\ is not a delimiter for non-special schemes, and it’s invalid in a domain]
+ expected: FAIL
+
+ [Setting <http://example.net:8080>.port = '' Port number is unchanged if empty in the new value. Note: this may change, see https://github.com/whatwg/url/pull/113]
+ expected: FAIL
+
+ [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
+
+ [Setting <unix:/run/foo.socket?timeout=10>.pathname = '/var/log/../run/bar.socket']
+ expected: FAIL
+
+ [Setting <http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is a segment delimiter for 'special' URLs]
+ expected: FAIL
+
+ [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
+
+ [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
+
+ [Setting <http://example.net>.pathname = '%2e%2E%c3%89té' Bytes already percent-encoded are left as-is, except %2E.]
+ expected: FAIL
+
+ [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
+
+ [Setting <a:/>.hash = '\x00\x01\t\n\r\x1f !"#$%&'()*+,-./09:;<=>?@AZ[\\\]^_`az{|}~€Éé' No percent-encoding at all (!); nuls, tabs, and newlines are removed]
+ expected: FAIL
+
+ [Setting <http://example.net>.hash = '%c3%89té' Bytes already percent-encoded are left as-is]
+ expected: FAIL
+
diff --git a/testing/web-platform/meta/url/urlsearchparams-constructor.html.ini b/testing/web-platform/meta/url/urlsearchparams-constructor.html.ini
new file mode 100644
index 000000000..af33a71e1
--- /dev/null
+++ b/testing/web-platform/meta/url/urlsearchparams-constructor.html.ini
@@ -0,0 +1,5 @@
+[urlsearchparams-constructor.html]
+ type: testharness
+ [URLSearchParams constructor, empty.]
+ expected: FAIL
+