[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: <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://192.0x00A80001> against <about:blank>]
    expected: FAIL

  [Parsing: <http://user:pass@/> 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://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.@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://％４１.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://％００.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://%30%78%63%30%2e%30%32%35%30.01> against <http://other.com/>]
    expected: FAIL

  [Parsing: <http://%30%78%63%30%2e%30%32%35%30.01%2e> 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://０Ｘｃ０．０２５０．０１> 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: <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: <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

