blob: 9c40743d23e6e70b029fb4b118759d4ff2596efe [file] [log] [blame]
CONSOLE MESSAGE: Blocked setting data:, as the base URL because it does not have an allowed scheme.
PASS Loading data…
PASS Parsing: <http://example .
org> against <http://example.org/foo/bar>
PASS Parsing: <http://user:pass@foo:21/bar;par?b#c> against <http://example.org/foo/bar>
PASS Parsing: <https://test:@test> against <about:blank>
PASS Parsing: <https://:@test> against <about:blank>
PASS Parsing: <non-special://test:@test/x> against <about:blank>
PASS Parsing: <non-special://:@test/x> against <about:blank>
PASS Parsing: <http:foo.com> against <http://example.org/foo/bar>
PASS Parsing: < :foo.com
> against <http://example.org/foo/bar>
PASS Parsing: < foo.com > against <http://example.org/foo/bar>
PASS Parsing: <a: foo.com> against <http://example.org/foo/bar>
PASS Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar>
PASS Parsing: <lolscheme:x x#x x> against <about:blank>
PASS Parsing: <http://f:/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:0/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:00000000000000/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:00000000000000000000080/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:b/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f: /c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:
/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:fifty-two/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f:999999/c> against <http://example.org/foo/bar>
PASS Parsing: <non-special://f:999999/c> against <http://example.org/foo/bar>
PASS Parsing: <http://f: 21 / b ? d # e > against <http://example.org/foo/bar>
PASS Parsing: <> against <http://example.org/foo/bar>
PASS Parsing: < > against <http://example.org/foo/bar>
PASS Parsing: <:foo.com/> against <http://example.org/foo/bar>
PASS Parsing: <:foo.com\> against <http://example.org/foo/bar>
PASS Parsing: <:> against <http://example.org/foo/bar>
PASS Parsing: <:a> against <http://example.org/foo/bar>
PASS Parsing: <:/> against <http://example.org/foo/bar>
PASS Parsing: <:\> against <http://example.org/foo/bar>
PASS Parsing: <:#> against <http://example.org/foo/bar>
PASS Parsing: <#> against <http://example.org/foo/bar>
PASS Parsing: <#/> against <http://example.org/foo/bar>
PASS Parsing: <#\> against <http://example.org/foo/bar>
PASS Parsing: <#;?> against <http://example.org/foo/bar>
PASS Parsing: <?> against <http://example.org/foo/bar>
PASS Parsing: </> against <http://example.org/foo/bar>
PASS Parsing: <:23> against <http://example.org/foo/bar>
PASS Parsing: </:23> against <http://example.org/foo/bar>
PASS Parsing: <\x> against <http://example.org/foo/bar>
PASS Parsing: <\\x\hello> against <http://example.org/foo/bar>
PASS Parsing: <::> against <http://example.org/foo/bar>
PASS Parsing: <::23> against <http://example.org/foo/bar>
PASS Parsing: <foo://> against <http://example.org/foo/bar>
PASS Parsing: <http://a:b@c:29/d> against <http://example.org/foo/bar>
PASS Parsing: <http::@c:29> against <http://example.org/foo/bar>
PASS Parsing: <http://&a:foo(b]c@d:2/> against <http://example.org/foo/bar>
PASS Parsing: <http://::@c@d:2> against <http://example.org/foo/bar>
PASS Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>
PASS Parsing: <http://foo.com/\@> against <http://example.org/foo/bar>
PASS Parsing: <http:\\foo.com\> against <http://example.org/foo/bar>
PASS Parsing: <http:\\a\b:c\d@foo.com\> against <http://example.org/foo/bar>
PASS Parsing: <foo:/> against <http://example.org/foo/bar>
PASS Parsing: <foo:/bar.com/> against <http://example.org/foo/bar>
PASS Parsing: <foo://///////> against <http://example.org/foo/bar>
PASS Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>
PASS Parsing: <foo:////://///> against <http://example.org/foo/bar>
PASS Parsing: <c:/foo> against <http://example.org/foo/bar>
PASS Parsing: <//foo/bar> against <http://example.org/foo/bar>
PASS Parsing: <http://foo/path;a??e#f#g> against <http://example.org/foo/bar>
PASS Parsing: <http://foo/abcd?efgh?ijkl> against <http://example.org/foo/bar>
PASS Parsing: <http://foo/abcd#foo?bar> against <http://example.org/foo/bar>
PASS Parsing: <[61:24:74]:98> against <http://example.org/foo/bar>
PASS Parsing: <http:[61:27]/:foo> against <http://example.org/foo/bar>
PASS Parsing: <http://[1::2]:3:4> against <http://example.org/foo/bar>
PASS Parsing: <http://2001::1> against <http://example.org/foo/bar>
PASS Parsing: <http://2001::1]> against <http://example.org/foo/bar>
PASS Parsing: <http://2001::1]:80> against <http://example.org/foo/bar>
PASS Parsing: <http://[2001::1]> against <http://example.org/foo/bar>
PASS Parsing: <http://[::127.0.0.1]> against <http://example.org/foo/bar>
PASS Parsing: <http://[0:0:0:0:0:0:13.1.68.3]> against <http://example.org/foo/bar>
PASS Parsing: <http://[2001::1]:80> against <http://example.org/foo/bar>
PASS Parsing: <http:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <ftp:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <https:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <file:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <file://example:1/> against <about:blank>
PASS Parsing: <file://example:test/> against <about:blank>
PASS Parsing: <file://example%/> against <about:blank>
PASS Parsing: <file://[example]/> against <about:blank>
PASS Parsing: <ftps:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <gopher:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <ws:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <wss:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <data:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <javascript:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <mailto:/example.com/> against <http://example.org/foo/bar>
PASS Parsing: <http:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <ftp:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <https:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <ftps:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <gopher:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <ws:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <wss:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <data:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <javascript:example.com/> against <http://example.org/foo/bar>
PASS Parsing: <mailto:example.com/> against <http://example.org/foo/bar>
PASS Parsing: </a/b/c> against <http://example.org/foo/bar>
PASS Parsing: </a/ /c> against <http://example.org/foo/bar>
PASS Parsing: </a%2fc> against <http://example.org/foo/bar>
PASS Parsing: </a/%2f/c> against <http://example.org/foo/bar>
PASS Parsing: <#β> against <http://example.org/foo/bar>
PASS Parsing: <data:text/html,test#test> against <http://example.org/foo/bar>
PASS Parsing: <tel:1234567890> against <http://example.org/foo/bar>
PASS Parsing: <ssh://example.com/foo/bar.git> against <http://example.org/>
PASS Parsing: <file:c:\foo\bar.html> against <file:///tmp/mock/path>
PASS Parsing: < File:c|////foo\bar.html> against <file:///tmp/mock/path>
PASS Parsing: <C|/foo/bar> against <file:///tmp/mock/path>
PASS Parsing: </C|\foo\bar> against <file:///tmp/mock/path>
PASS Parsing: <//C|/foo/bar> against <file:///tmp/mock/path>
PASS Parsing: <//server/file> against <file:///tmp/mock/path>
PASS Parsing: <\\server\file> against <file:///tmp/mock/path>
PASS Parsing: </\server/file> against <file:///tmp/mock/path>
PASS Parsing: <file:///foo/bar.txt> against <file:///tmp/mock/path>
PASS Parsing: <file:///home/me> against <file:///tmp/mock/path>
PASS Parsing: <//> against <file:///tmp/mock/path>
PASS Parsing: <///> against <file:///tmp/mock/path>
PASS Parsing: <///test> against <file:///tmp/mock/path>
PASS Parsing: <file://test> against <file:///tmp/mock/path>
PASS Parsing: <file://localhost> against <file:///tmp/mock/path>
PASS Parsing: <file://localhost/> against <file:///tmp/mock/path>
PASS Parsing: <file://localhost/test> against <file:///tmp/mock/path>
PASS Parsing: <test> against <file:///tmp/mock/path>
PASS Parsing: <file:test> against <file:///tmp/mock/path>
PASS Parsing: <http://example.com/././foo> against <about:blank>
PASS Parsing: <http://example.com/./.foo> against <about:blank>
PASS Parsing: <http://example.com/foo/.> against <about:blank>
PASS Parsing: <http://example.com/foo/./> against <about:blank>
PASS Parsing: <http://example.com/foo/bar/..> against <about:blank>
PASS Parsing: <http://example.com/foo/bar/../> against <about:blank>
PASS Parsing: <http://example.com/foo/..bar> against <about:blank>
PASS Parsing: <http://example.com/foo/bar/../ton> against <about:blank>
PASS Parsing: <http://example.com/foo/bar/../ton/../../a> against <about:blank>
PASS Parsing: <http://example.com/foo/../../..> against <about:blank>
PASS Parsing: <http://example.com/foo/../../../ton> against <about:blank>
PASS Parsing: <http://example.com/foo/%2e> against <about:blank>
PASS Parsing: <http://example.com/foo/%2e%2> against <about:blank>
PASS Parsing: <http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar> against <about:blank>
PASS Parsing: <http://example.com////../..> against <about:blank>
PASS Parsing: <http://example.com/foo/bar//../..> against <about:blank>
PASS Parsing: <http://example.com/foo/bar//..> against <about:blank>
PASS Parsing: <http://example.com/foo> against <about:blank>
PASS Parsing: <http://example.com/%20foo> against <about:blank>
PASS Parsing: <http://example.com/foo%> against <about:blank>
PASS Parsing: <http://example.com/foo%2> against <about:blank>
PASS Parsing: <http://example.com/foo%2zbar> against <about:blank>
PASS Parsing: <http://example.com/foo%2©zbar> against <about:blank>
PASS Parsing: <http://example.com/foo%41%7a> against <about:blank>
PASS Parsing: <http://example.com/foo ‘%91> against <about:blank>
PASS Parsing: <http://example.com/foo%00%51> against <about:blank>
PASS Parsing: <http://example.com/(%28:%3A%29)> against <about:blank>
PASS Parsing: <http://example.com/%3A%3a%3C%3c> against <about:blank>
PASS Parsing: <http://example.com/foo bar> against <about:blank>
PASS Parsing: <http://example.com\\foo\\bar> against <about:blank>
PASS Parsing: <http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd> against <about:blank>
PASS Parsing: <http://example.com/@asdf%40> against <about:blank>
PASS Parsing: <http://example.com/你好你好> against <about:blank>
PASS Parsing: <http://example.com/‥/foo> against <about:blank>
PASS Parsing: <http://example.com//foo> against <about:blank>
PASS Parsing: <http://example.com/‮/foo/‭/bar> against <about:blank>
PASS Parsing: <http://www.google.com/foo?bar=baz#> against <about:blank>
PASS Parsing: <http://www.google.com/foo?bar=baz# »> against <about:blank>
PASS Parsing: <data:test# »> against <about:blank>
PASS Parsing: <http://www.google.com> against <about:blank>
PASS Parsing: <http://192.0x00A80001> against <about:blank>
PASS Parsing: <http://www/foo%2Ehtml> against <about:blank>
PASS Parsing: <http://www/foo/%2E/html> against <about:blank>
PASS Parsing: <http://user:pass@/> against <about:blank>
PASS Parsing: <http://%25DOMAIN:foobar@foodomain.com/> against <about:blank>
PASS Parsing: <http:\\www.google.com\foo> against <about:blank>
PASS Parsing: <http://foo:80/> against <about:blank>
PASS Parsing: <http://foo:81/> against <about:blank>
PASS Parsing: <httpa://foo:80/> against <about:blank>
PASS Parsing: <http://foo:-80/> against <about:blank>
PASS Parsing: <https://foo:443/> against <about:blank>
PASS Parsing: <https://foo:80/> against <about:blank>
PASS Parsing: <ftp://foo:21/> against <about:blank>
PASS Parsing: <ftp://foo:80/> against <about:blank>
PASS Parsing: <gopher://foo:70/> against <about:blank>
PASS Parsing: <gopher://foo:443/> against <about:blank>
PASS Parsing: <ws://foo:80/> against <about:blank>
PASS Parsing: <ws://foo:81/> against <about:blank>
PASS Parsing: <ws://foo:443/> against <about:blank>
PASS Parsing: <ws://foo:815/> against <about:blank>
PASS Parsing: <wss://foo:80/> against <about:blank>
PASS Parsing: <wss://foo:81/> against <about:blank>
PASS Parsing: <wss://foo:443/> against <about:blank>
PASS Parsing: <wss://foo:815/> against <about:blank>
PASS Parsing: <http:/example.com/> against <about:blank>
PASS Parsing: <ftp:/example.com/> against <about:blank>
PASS Parsing: <https:/example.com/> against <about:blank>
PASS Parsing: <madeupscheme:/example.com/> against <about:blank>
PASS Parsing: <file:/example.com/> against <about:blank>
PASS Parsing: <ftps:/example.com/> against <about:blank>
PASS Parsing: <gopher:/example.com/> against <about:blank>
PASS Parsing: <ws:/example.com/> against <about:blank>
PASS Parsing: <wss:/example.com/> against <about:blank>
PASS Parsing: <data:/example.com/> against <about:blank>
PASS Parsing: <javascript:/example.com/> against <about:blank>
PASS Parsing: <mailto:/example.com/> against <about:blank>
PASS Parsing: <http:example.com/> against <about:blank>
PASS Parsing: <ftp:example.com/> against <about:blank>
PASS Parsing: <https:example.com/> against <about:blank>
PASS Parsing: <madeupscheme:example.com/> against <about:blank>
PASS Parsing: <ftps:example.com/> against <about:blank>
PASS Parsing: <gopher:example.com/> against <about:blank>
PASS Parsing: <ws:example.com/> against <about:blank>
PASS Parsing: <wss:example.com/> against <about:blank>
PASS Parsing: <data:example.com/> against <about:blank>
PASS Parsing: <javascript:example.com/> against <about:blank>
PASS Parsing: <mailto:example.com/> against <about:blank>
PASS Parsing: <http:@www.example.com> against <about:blank>
PASS Parsing: <http:/@www.example.com> against <about:blank>
PASS Parsing: <http://@www.example.com> against <about:blank>
PASS Parsing: <http:a:b@www.example.com> against <about:blank>
PASS Parsing: <http:/a:b@www.example.com> against <about:blank>
PASS Parsing: <http://a:b@www.example.com> against <about:blank>
PASS Parsing: <http://@pple.com> against <about:blank>
PASS Parsing: <http::b@www.example.com> against <about:blank>
PASS Parsing: <http:/:b@www.example.com> against <about:blank>
PASS Parsing: <http://:b@www.example.com> against <about:blank>
PASS Parsing: <http:/:@/www.example.com> against <about:blank>
PASS Parsing: <http://user@/www.example.com> against <about:blank>
PASS Parsing: <http:@/www.example.com> against <about:blank>
PASS Parsing: <http:/@/www.example.com> against <about:blank>
PASS Parsing: <http://@/www.example.com> against <about:blank>
PASS Parsing: <https:@/www.example.com> against <about:blank>
PASS Parsing: <http:a:b@/www.example.com> against <about:blank>
PASS Parsing: <http:/a:b@/www.example.com> against <about:blank>
PASS Parsing: <http://a:b@/www.example.com> against <about:blank>
PASS Parsing: <http::@/www.example.com> against <about:blank>
PASS Parsing: <http:a:@www.example.com> against <about:blank>
PASS Parsing: <http:/a:@www.example.com> against <about:blank>
PASS Parsing: <http://a:@www.example.com> against <about:blank>
PASS Parsing: <http://www.@pple.com> against <about:blank>
PASS Parsing: <http:@:www.example.com> against <about:blank>
PASS Parsing: <http:/@:www.example.com> against <about:blank>
PASS Parsing: <http://@:www.example.com> against <about:blank>
PASS Parsing: <http://:@www.example.com> against <about:blank>
PASS Parsing: </> against <http://www.example.com/test>
PASS Parsing: </test.txt> against <http://www.example.com/test>
PASS Parsing: <.> against <http://www.example.com/test>
PASS Parsing: <..> against <http://www.example.com/test>
PASS Parsing: <test.txt> against <http://www.example.com/test>
PASS Parsing: <./test.txt> against <http://www.example.com/test>
PASS Parsing: <../test.txt> against <http://www.example.com/test>
PASS Parsing: <../aaa/test.txt> against <http://www.example.com/test>
PASS Parsing: <../../test.txt> against <http://www.example.com/test>
PASS Parsing: <中/test.txt> against <http://www.example.com/test>
PASS Parsing: <http://www.example2.com> against <http://www.example.com/test>
PASS Parsing: <//www.example2.com> against <http://www.example.com/test>
PASS Parsing: <file:...> against <http://www.example.com/test>
PASS Parsing: <file:..> against <http://www.example.com/test>
PASS Parsing: <file:a> against <http://www.example.com/test>
PASS Parsing: <http://ExAmPlE.CoM> against <http://other.com/>
PASS Parsing: <http://example example.com> against <http://other.com/>
PASS Parsing: <http://Goo%20 goo%7C|.com> against <http://other.com/>
PASS Parsing: <http://[]> against <http://other.com/>
PASS Parsing: <http://[:]> against <http://other.com/>
PASS Parsing: <http://GOO  goo.com> against <http://other.com/>
PASS Parsing: <http://GOO​⁠goo.com> against <http://other.com/>
PASS Parsing: <\0 http://example.com/ \r > against <about:blank>
PASS Parsing: <http://www.foo。bar.com> against <http://other.com/>
PASS Parsing: <http://﷐zyx.com> against <http://other.com/>
PASS Parsing: <http://%ef%b7%90zyx.com> against <http://other.com/>
PASS Parsing: <https://�> against <about:blank>
PASS Parsing: <https://%EF%BF%BD> against <about:blank>
PASS Parsing: <https://x/�?�#�> against <about:blank>
PASS Parsing: <http://a.b.c.xn--pokxncvks> against <about:blank>
PASS Parsing: <http://10.0.0.xn--pokxncvks> against <about:blank>
PASS Parsing: <http://a.b.c.XN--pokxncvks> against <about:blank>
PASS Parsing: <http://a.b.c.Xn--pokxncvks> against <about:blank>
PASS Parsing: <http://10.0.0.XN--pokxncvks> against <about:blank>
PASS Parsing: <http://10.0.0.xN--pokxncvks> against <about:blank>
PASS Parsing: <http://Go.com> against <http://other.com/>
PASS Parsing: <http://%41.com> against <http://other.com/>
PASS Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/>
PASS Parsing: <http://%00.com> against <http://other.com/>
PASS Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/>
PASS Parsing: <http://你好你好> against <http://other.com/>
PASS Parsing: <https://faß.ExAmPlE/> against <about:blank>
PASS Parsing: <sc://faß.ExAmPlE/> against <about:blank>
PASS Parsing: <http://%zz%66%a.com> against <http://other.com/>
PASS Parsing: <http://%25> against <http://other.com/>
PASS Parsing: <http://hello%00> against <http://other.com/>
PASS Parsing: <http://%30%78%63%30%2e%30%32%35%30.01> against <http://other.com/>
PASS Parsing: <http://%30%78%63%30%2e%30%32%35%30.01%2e> against <http://other.com/>
PASS Parsing: <http://192.168.0.257> against <http://other.com/>
PASS Parsing: <http://%3g%78%63%30%2e%30%32%35%30%2E.01> against <http://other.com/>
PASS Parsing: <http://192.168.0.1 hello> against <http://other.com/>
PASS Parsing: <https://x x:12> against <about:blank>
PASS Parsing: <http://0Xc0.0250.01> against <http://other.com/>
PASS Parsing: <http://./> against <about:blank>
PASS Parsing: <http://../> against <about:blank>
PASS Parsing: <http://[www.google.com]/> against <about:blank>
PASS Parsing: <http://[google.com]> against <http://other.com/>
PASS Parsing: <http://[::1.2.3.4x]> against <http://other.com/>
PASS Parsing: <http://[::1.2.3.]> against <http://other.com/>
PASS Parsing: <http://[::1.2.]> against <http://other.com/>
PASS Parsing: <http://[::1.]> against <http://other.com/>
PASS Parsing: <http://foo:💩@example.com/bar> against <http://other.com/>
PASS Parsing: <#> against <test:test>
PASS Parsing: <#x> against <mailto:x@x.com>
FAIL Parsing: <#x> against <data:,> assert_equals: href expected "data:,#x" but got "mailto:x@x.com#x"
PASS Parsing: <#x> against <about:blank>
PASS Parsing: <#> against <test:test?test>
PASS Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>
PASS Parsing: <https://@@@example> against <http://doesnotmatter/>
PASS Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>
PASS Parsing: <http://host/?'> against <about:blank>
PASS Parsing: <notspecial://host/?'> against <about:blank>
PASS Parsing: </some/path> against <http://user@example.org/smth>
PASS Parsing: <> against <http://user:pass@example.org:21/smth>
PASS Parsing: </some/path> against <http://user:pass@example.org:21/smth>
PASS Parsing: <i> against <sc:sd>
PASS Parsing: <i> against <sc:sd/sd>
PASS Parsing: <i> against <sc:/pa/pa>
PASS Parsing: <i> against <sc://ho/pa>
PASS Parsing: <i> against <sc:///pa/pa>
PASS Parsing: <../i> against <sc:sd>
PASS Parsing: <../i> against <sc:sd/sd>
PASS Parsing: <../i> against <sc:/pa/pa>
PASS Parsing: <../i> against <sc://ho/pa>
PASS Parsing: <../i> against <sc:///pa/pa>
PASS Parsing: </i> against <sc:sd>
PASS Parsing: </i> against <sc:sd/sd>
PASS Parsing: </i> against <sc:/pa/pa>
PASS Parsing: </i> against <sc://ho/pa>
PASS Parsing: </i> against <sc:///pa/pa>
PASS Parsing: <?i> against <sc:sd>
PASS Parsing: <?i> against <sc:sd/sd>
PASS Parsing: <?i> against <sc:/pa/pa>
PASS Parsing: <?i> against <sc://ho/pa>
PASS Parsing: <?i> against <sc:///pa/pa>
PASS Parsing: <#i> against <sc:sd>
PASS Parsing: <#i> against <sc:sd/sd>
PASS Parsing: <#i> against <sc:/pa/pa>
PASS Parsing: <#i> against <sc://ho/pa>
PASS Parsing: <#i> against <sc:///pa/pa>
PASS Parsing: <about:/../> against <about:blank>
PASS Parsing: <data:/../> against <about:blank>
PASS Parsing: <javascript:/../> against <about:blank>
PASS Parsing: <mailto:/../> against <about:blank>
PASS Parsing: <sc://ñ.test/> against <about:blank>
PASS Parsing: <sc://%/> against <about:blank>
PASS Parsing: <sc://@/> against <about:blank>
PASS Parsing: <sc://te@s:t@/> against <about:blank>
PASS Parsing: <sc://:/> against <about:blank>
PASS Parsing: <sc://:12/> against <about:blank>
PASS Parsing: <x> against <sc://ñ>
PASS Parsing: <sc:\../> against <about:blank>
PASS Parsing: <sc::a@example.net> against <about:blank>
PASS Parsing: <wow:%NBD> against <about:blank>
PASS Parsing: <wow:%1G> against <about:blank>
PASS Parsing: <wow:￿> against <about:blank>
PASS Parsing: <http://example.com/U+d800𐟾U+dfff﷐﷏﷯ﷰ￾￿?U+d800𐟾U+dfff﷐﷏﷯ﷰ￾￿> against <about:blank>
PASS Parsing: <sc://a\0b/> against <about:blank>
PASS Parsing: <sc://a b/> against <about:blank>
PASS Parsing: <sc://a<b> against <about:blank>
PASS Parsing: <sc://a>b> against <about:blank>
PASS Parsing: <sc://a[b/> against <about:blank>
PASS Parsing: <sc://a\b/> against <about:blank>
PASS Parsing: <sc://a]b/> against <about:blank>
PASS Parsing: <sc://a^b> against <about:blank>
PASS Parsing: <sc://a|b/> against <about:blank>
PASS Parsing: <foo://ho st/> against <about:blank>
PASS Parsing: <foo://ho
st/> against <about:blank>
PASS Parsing: <foo://ho\rst/> against <about:blank>
PASS Parsing: <http://a\0b/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://a b/> against <about:blank>
PASS Parsing: <http://a b/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://a b/> against <about:blank>
PASS Parsing: <http://a%b/> against <about:blank>
PASS Parsing: <http://a<b> against <about:blank>
PASS Parsing: <http://a>b> against <about:blank>
PASS Parsing: <http://a[b/> against <about:blank>
PASS Parsing: <http://a]b/> against <about:blank>
PASS Parsing: <http://a^b> against <about:blank>
PASS Parsing: <http://a|b/> against <about:blank>
PASS Parsing: <http://ab/> against <about:blank>
PASS Parsing: <http://ho st/> against <about:blank>
PASS Parsing: <http://ho
st/> against <about:blank>
PASS Parsing: <http://ho\rst/> against <about:blank>
PASS Parsing: <http://ho%00st/> against <about:blank>
PASS Parsing: <http://ho%01st/> against <about:blank>
PASS Parsing: <http://ho%02st/> against <about:blank>
PASS Parsing: <http://ho%03st/> against <about:blank>
PASS Parsing: <http://ho%04st/> against <about:blank>
PASS Parsing: <http://ho%05st/> against <about:blank>
PASS Parsing: <http://ho%06st/> against <about:blank>
PASS Parsing: <http://ho%07st/> against <about:blank>
PASS Parsing: <http://ho%08st/> against <about:blank>
PASS Parsing: <http://ho%09st/> against <about:blank>
PASS Parsing: <http://ho%0Ast/> against <about:blank>
PASS Parsing: <http://ho%0Bst/> against <about:blank>
PASS Parsing: <http://ho%0Cst/> against <about:blank>
PASS Parsing: <http://ho%0Dst/> against <about:blank>
PASS Parsing: <http://ho%0Est/> against <about:blank>
PASS Parsing: <http://ho%0Fst/> against <about:blank>
PASS Parsing: <http://ho%10st/> against <about:blank>
PASS Parsing: <http://ho%11st/> against <about:blank>
PASS Parsing: <http://ho%12st/> against <about:blank>
PASS Parsing: <http://ho%13st/> against <about:blank>
PASS Parsing: <http://ho%14st/> against <about:blank>
PASS Parsing: <http://ho%15st/> against <about:blank>
PASS Parsing: <http://ho%16st/> against <about:blank>
PASS Parsing: <http://ho%17st/> against <about:blank>
PASS Parsing: <http://ho%18st/> against <about:blank>
PASS Parsing: <http://ho%19st/> against <about:blank>
PASS Parsing: <http://ho%1Ast/> against <about:blank>
PASS Parsing: <http://ho%1Bst/> against <about:blank>
PASS Parsing: <http://ho%1Cst/> against <about:blank>
PASS Parsing: <http://ho%1Dst/> against <about:blank>
PASS Parsing: <http://ho%1Est/> against <about:blank>
PASS Parsing: <http://ho%1Fst/> against <about:blank>
PASS Parsing: <http://ho%20st/> against <about:blank>
PASS Parsing: <http://ho%23st/> against <about:blank>
PASS Parsing: <http://ho%25st/> against <about:blank>
PASS Parsing: <http://ho%2Fst/> against <about:blank>
PASS Parsing: <http://ho%3Ast/> against <about:blank>
PASS Parsing: <http://ho%3Cst/> against <about:blank>
PASS Parsing: <http://ho%3Est/> against <about:blank>
PASS Parsing: <http://ho%3Fst/> against <about:blank>
PASS Parsing: <http://ho%40st/> against <about:blank>
PASS Parsing: <http://ho%5Bst/> against <about:blank>
PASS Parsing: <http://ho%5Cst/> against <about:blank>
PASS Parsing: <http://ho%5Dst/> against <about:blank>
PASS Parsing: <http://ho%7Cst/> against <about:blank>
PASS Parsing: <http://ho%7Fst/> against <about:blank>
PASS Parsing: <http://!"$&'()*+,-.;=_`{}~/> against <about:blank>
FAIL Parsing: <sc:// !"$%&'()*+,-.;=_`{}~/> against <about:blank> assert_equals: href expected "sc://%01%02%03%04%05%06%07%08%0B%0C%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%7F!\"$%&'()*+,-.;=_`{}~/" but got "sc://\x01\x02\x03\x04\x05\x06\x07\b\v\f\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f!\"$%&'()*+,-.;=_`{}~/"
PASS Parsing: <ftp://example.com%80/> against <about:blank>
PASS Parsing: <ftp://example.com%A0/> against <about:blank>
PASS Parsing: <https://example.com%80/> against <about:blank>
PASS Parsing: <https://example.com%A0/> against <about:blank>
PASS Parsing: <ftp://%e2%98%83> against <about:blank>
PASS Parsing: <https://%e2%98%83> against <about:blank>
PASS Parsing: <http://127.0.0.1:10100/relative_import.html> against <about:blank>
PASS Parsing: <http://facebook.com/?foo=%7B%22abc%22> against <about:blank>
PASS Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank>
PASS Parsing: <h t
t\rp://h o
s\rt:9 0
0\r0/p a
t\rh?q u
e\rry#f r
a\rg> against <about:blank>
PASS Parsing: <?a=b&c=d> against <http://example.org/foo/bar>
PASS Parsing: <??a=b&c=d> against <http://example.org/foo/bar>
PASS Parsing: <http:> against <http://example.org/foo/bar>
PASS Parsing: <http:> against <https://example.org/foo/bar>
PASS Parsing: <sc:> against <https://example.org/foo/bar>
PASS Parsing: <http://foo.bar/baz?qux#foobar> against <about:blank>
PASS Parsing: <http://foo.bar/baz?qux#foo"bar> against <about:blank>
PASS Parsing: <http://foo.bar/baz?qux#foo<bar> against <about:blank>
PASS Parsing: <http://foo.bar/baz?qux#foo>bar> against <about:blank>
PASS Parsing: <http://foo.bar/baz?qux#foo`bar> against <about:blank>
PASS Parsing: <http://1.2.3.4/> against <http://other.com/>
PASS Parsing: <http://1.2.3.4./> against <http://other.com/>
PASS Parsing: <http://192.168.257> against <http://other.com/>
PASS Parsing: <http://192.168.257.> against <http://other.com/>
PASS Parsing: <http://192.168.257.com> against <http://other.com/>
PASS Parsing: <http://256> against <http://other.com/>
PASS Parsing: <http://256.com> against <http://other.com/>
PASS Parsing: <http://999999999> against <http://other.com/>
PASS Parsing: <http://999999999.> against <http://other.com/>
PASS Parsing: <http://999999999.com> against <http://other.com/>
PASS Parsing: <http://10000000000> against <http://other.com/>
PASS Parsing: <http://10000000000.com> against <http://other.com/>
PASS Parsing: <http://4294967295> against <http://other.com/>
PASS Parsing: <http://4294967296> against <http://other.com/>
PASS Parsing: <http://0xffffffff> against <http://other.com/>
PASS Parsing: <http://0xffffffff1> against <http://other.com/>
PASS Parsing: <http://256.256.256.256> against <http://other.com/>
PASS Parsing: <https://0x.0x.0> against <about:blank>
PASS Parsing: <https://0x100000000/test> against <about:blank>
PASS Parsing: <https://256.0.0.1/test> against <about:blank>
PASS Parsing: <file:///C%3A/> against <about:blank>
PASS Parsing: <file:///C%7C/> against <about:blank>
PASS Parsing: <file://%43%3A> against <about:blank>
PASS Parsing: <file://%43%7C> against <about:blank>
PASS Parsing: <file://%43|> against <about:blank>
PASS Parsing: <file://C%7C> against <about:blank>
PASS Parsing: <file://%43%7C/> against <about:blank>
PASS Parsing: <https://%43%7C/> against <about:blank>
PASS Parsing: <asdf://%43|/> against <about:blank>
PASS Parsing: <asdf://%43%7C/> against <about:blank>
PASS Parsing: <pix/submit.gif> against <file:///C:/Users/Domenic/Dropbox/GitHub/tmpvar/jsdom/test/level2/html/files/anchor.html>
PASS Parsing: <..> against <file:///C:/>
PASS Parsing: <..> against <file:///>
PASS Parsing: </> against <file:///C:/a/b>
PASS Parsing: </> against <file://h/C:/a/b>
PASS Parsing: </> against <file://h/a/b>
PASS Parsing: <//d:> against <file:///C:/a/b>
PASS Parsing: <//d:/..> against <file:///C:/a/b>
PASS Parsing: <..> against <file:///ab:/>
PASS Parsing: <..> against <file:///1:/>
PASS Parsing: <> against <file:///test?test#test>
PASS Parsing: <file:> against <file:///test?test#test>
PASS Parsing: <?x> against <file:///test?test#test>
PASS Parsing: <file:?x> against <file:///test?test#test>
PASS Parsing: <#x> against <file:///test?test#test>
PASS Parsing: <file:#x> against <file:///test?test#test>
PASS Parsing: <file:\\//> against <about:blank>
PASS Parsing: <file:\\\\> against <about:blank>
PASS Parsing: <file:\\\\?fox> against <about:blank>
PASS Parsing: <file:\\\\#guppy> against <about:blank>
PASS Parsing: <file://spider///> against <about:blank>
PASS Parsing: <file:\\localhost//> against <about:blank>
PASS Parsing: <file:///localhost//cat> against <about:blank>
PASS Parsing: <file://\/localhost//cat> against <about:blank>
PASS Parsing: <file://localhost//a//../..//> against <about:blank>
PASS Parsing: </////mouse> against <file:///elephant>
PASS Parsing: <\//pig> against <file://lion/>
PASS Parsing: <\/localhost//pig> against <file://lion/>
PASS Parsing: <//localhost//pig> against <file://lion/>
PASS Parsing: </..//localhost//pig> against <file://lion/>
PASS Parsing: <file://> against <file://ape/>
PASS Parsing: </rooibos> against <file://tea/>
PASS Parsing: </?chai> against <file://tea/>
PASS Parsing: <C|> against <file://host/dir/file>
PASS Parsing: <C|> against <file://host/D:/dir1/dir2/file>
PASS Parsing: <C|#> against <file://host/dir/file>
PASS Parsing: <C|?> against <file://host/dir/file>
PASS Parsing: <C|/> against <file://host/dir/file>
PASS Parsing: <C|
/> against <file://host/dir/file>
PASS Parsing: <C|\> against <file://host/dir/file>
PASS Parsing: <C> against <file://host/dir/file>
PASS Parsing: <C|a> against <file://host/dir/file>
PASS Parsing: </c:/foo/bar> against <file:///c:/baz/qux>
PASS Parsing: </c|/foo/bar> against <file:///c:/baz/qux>
PASS Parsing: <file:\c:\foo\bar> against <file:///c:/baz/qux>
PASS Parsing: </c:/foo/bar> against <file://host/path>
PASS Parsing: <file://example.net/C:/> against <about:blank>
PASS Parsing: <file://1.2.3.4/C:/> against <about:blank>
PASS Parsing: <file://[1::8]/C:/> against <about:blank>
PASS Parsing: <C|/> against <file://host/>
PASS Parsing: </C:/> against <file://host/>
PASS Parsing: <file:C:/> against <file://host/>
PASS Parsing: <file:/C:/> against <file://host/>
PASS Parsing: <//C:/> against <file://host/>
PASS Parsing: <file://C:/> against <file://host/>
PASS Parsing: <///C:/> against <file://host/>
PASS Parsing: <file:///C:/> against <file://host/>
PASS Parsing: <file:/C|/> against <about:blank>
PASS Parsing: <file://C|/> against <about:blank>
PASS Parsing: <file:> against <about:blank>
PASS Parsing: <file:?q=v> against <about:blank>
PASS Parsing: <file:#frag> against <about:blank>
PASS Parsing: <file:///Y:> against <about:blank>
PASS Parsing: <file:///Y:/> against <about:blank>
PASS Parsing: <file:///./Y> against <about:blank>
PASS Parsing: <file:///./Y:> against <about:blank>
PASS Parsing: <\\\.\Y:> against <about:blank>
PASS Parsing: <file:///y:> against <about:blank>
PASS Parsing: <file:///y:/> against <about:blank>
PASS Parsing: <file:///./y> against <about:blank>
PASS Parsing: <file:///./y:> against <about:blank>
PASS Parsing: <\\\.\y:> against <about:blank>
PASS Parsing: <file://localhost//a//../..//foo> against <about:blank>
PASS Parsing: <file://localhost////foo> against <about:blank>
PASS Parsing: <file:////foo> against <about:blank>
PASS Parsing: <file:///one/two> against <file:///>
PASS Parsing: <file:////one/two> against <file:///>
PASS Parsing: <//one/two> against <file:///>
PASS Parsing: <///one/two> against <file:///>
PASS Parsing: <////one/two> against <file:///>
PASS Parsing: <file:///.//> against <file:////>
PASS Parsing: <file:.//p> against <about:blank>
PASS Parsing: <file:/.//p> against <about:blank>
PASS Parsing: <http://[1:0::]> against <http://example.net/>
PASS Parsing: <http://[0:1:2:3:4:5:6:7:8]> against <http://example.net/>
PASS Parsing: <https://[0::0::0]> against <about:blank>
PASS Parsing: <https://[0:.0]> against <about:blank>
PASS Parsing: <https://[0:0:]> against <about:blank>
PASS Parsing: <https://[0:1:2:3:4:5:6:7.0.0.0.1]> against <about:blank>
PASS Parsing: <https://[0:1.00.0.0.0]> against <about:blank>
PASS Parsing: <https://[0:1.290.0.0.0]> against <about:blank>
PASS Parsing: <https://[0:1.23.23]> against <about:blank>
PASS Parsing: <http://?> against <about:blank>
PASS Parsing: <http://#> against <about:blank>
PASS Parsing: <http://f:4294967377/c> against <http://example.org/>
PASS Parsing: <http://f:18446744073709551697/c> against <http://example.org/>
PASS Parsing: <http://f:340282366920938463463374607431768211537/c> against <http://example.org/>
PASS Parsing: <sc://ñ> against <about:blank>
PASS Parsing: <sc://ñ?x> against <about:blank>
PASS Parsing: <sc://ñ#x> against <about:blank>
PASS Parsing: <#x> against <sc://ñ>
PASS Parsing: <?x> against <sc://ñ>
PASS Parsing: <sc://?> against <about:blank>
PASS Parsing: <sc://#> against <about:blank>
PASS Parsing: <///> against <sc://x/>
PASS Parsing: <////> against <sc://x/>
PASS Parsing: <////x/> against <sc://x/>
PASS Parsing: <tftp://foobar.com/someconfig;mode=netascii> against <about:blank>
PASS Parsing: <telnet://user:pass@foobar.com:23/> against <about:blank>
PASS Parsing: <ut2004://10.10.10.10:7777/Index.ut2> against <about:blank>
PASS Parsing: <redis://foo:bar@somehost:6379/0?baz=bam&qux=baz> against <about:blank>
PASS Parsing: <rsync://foo@host:911/sup> against <about:blank>
PASS Parsing: <git://github.com/foo/bar.git> against <about:blank>
PASS Parsing: <irc://myserver.com:6999/channel?passwd> against <about:blank>
PASS Parsing: <dns://fw.example.org:9999/foo.bar.org?type=TXT> against <about:blank>
PASS Parsing: <ldap://localhost:389/ou=People,o=JNDITutorial> against <about:blank>
PASS Parsing: <git+https://github.com/foo/bar> against <about:blank>
PASS Parsing: <urn:ietf:rfc:2648> against <about:blank>
PASS Parsing: <tag:joe@example.org,2001:foo/bar> against <about:blank>
PASS Parsing: <non-spec:/.//> against <about:blank>
PASS Parsing: <non-spec:/..//> against <about:blank>
PASS Parsing: <non-spec:/a/..//> against <about:blank>
PASS Parsing: <non-spec:/.//path> against <about:blank>
PASS Parsing: <non-spec:/..//path> against <about:blank>
PASS Parsing: <non-spec:/a/..//path> against <about:blank>
PASS Parsing: </.//path> against <non-spec:/p>
PASS Parsing: </..//path> against <non-spec:/p>
PASS Parsing: <..//path> against <non-spec:/p>
PASS Parsing: <a/..//path> against <non-spec:/p>
PASS Parsing: <> against <non-spec:/..//p>
PASS Parsing: <path> against <non-spec:/..//p>
PASS Parsing: <../path> against <non-spec:/.//p>
PASS Parsing: <non-special://%E2%80%A0/> against <about:blank>
PASS Parsing: <non-special://H%4fSt/path> against <about:blank>
PASS Parsing: <non-special://[1:2:0:0:5:0:0:0]/> against <about:blank>
PASS Parsing: <non-special://[1:2:0:0:0:0:0:3]/> against <about:blank>
PASS Parsing: <non-special://[1:2::3]:80/> against <about:blank>
PASS Parsing: <non-special://[:80/> against <about:blank>
PASS Parsing: <blob:https://example.com:443/> against <about:blank>
PASS Parsing: <blob:d3958f5c-0777-0845-9dcf-2cb28783acaf> against <about:blank>
PASS Parsing: <blob:> against <about:blank>
PASS Parsing: <http://0x7f.0.0.0x7g> against <about:blank>
PASS Parsing: <http://0X7F.0.0.0X7G> against <about:blank>
PASS Parsing: <http://[::127.0.0.0.1]> against <about:blank>
PASS Parsing: <http://[0:1:0:1:0:1:0:1]> against <about:blank>
PASS Parsing: <http://[1:0:1:0:1:0:1:0]> against <about:blank>
PASS Parsing: <http://example.org/test?"> against <about:blank>
PASS Parsing: <http://example.org/test?#> against <about:blank>
PASS Parsing: <http://example.org/test?<> against <about:blank>
PASS Parsing: <http://example.org/test?>> against <about:blank>
PASS Parsing: <http://example.org/test?⌣> against <about:blank>
PASS Parsing: <http://example.org/test?%23%23> against <about:blank>
PASS Parsing: <http://example.org/test?%GH> against <about:blank>
PASS Parsing: <http://example.org/test?a#%EF> against <about:blank>
PASS Parsing: <http://example.org/test?a#%GH> against <about:blank>
PASS Parsing: <a> against <about:blank>
PASS Parsing: <a/> against <about:blank>
PASS Parsing: <a//> against <about:blank>
PASS Parsing: <test-a-colon.html> against <a:>
PASS Parsing: <test-a-colon-b.html> against <a:b>
PASS Parsing: <test-a-colon-slash.html> against <a:/>
PASS Parsing: <test-a-colon-slash-slash.html> against <a://>
PASS Parsing: <test-a-colon-slash-b.html> against <a:/b>
PASS Parsing: <test-a-colon-slash-slash-b.html> against <a://b>
PASS Parsing: <http://example.org/test?a#b\0c> against <about:blank>
PASS Parsing: <non-spec://example.org/test?a#b\0c> against <about:blank>
PASS Parsing: <non-spec:/test?a#b\0c> against <about:blank>
PASS Parsing: <10.0.0.7:8080/foo.html> against <file:///some/dir/bar.html>
PASS Parsing: <a!@$*=/foo.html> against <file:///some/dir/bar.html>
PASS Parsing: <a1234567890-+.:foo/bar> against <http://example.com/dir/file>
PASS Parsing: <file://a­b/p> against <about:blank>
PASS Parsing: <file://a%C2%ADb/p> against <about:blank>
PASS Parsing: <file://­/p> against <about:blank>
PASS Parsing: <file://%C2%AD/p> against <about:blank>
PASS Parsing: <file://xn--/p> against <about:blank>
PASS Parsing: <#link> against <https://example.org/##link>
PASS Parsing: <non-special:cannot-be-a-base-url-\0~€> against <about:blank>
PASS Parsing: <https://www.example.com/path{path.html?query'=query#fragment<fragment> against <about:blank>
PASS Parsing: <https://user:pass[@foo/bar> against <http://example.org>
PASS Parsing: <foo:// !"$%&'()*+,-.;<=>@[\]^_`{|}~@host/> against <about:blank>
PASS Parsing: <wss:// !"$%&'()*+,-.;<=>@[]^_`{|}~@host/> against <about:blank>
PASS Parsing: <foo://joe: !"$%&'()*+,-.:;<=>@[\]^_`{|}~@host/> against <about:blank>
PASS Parsing: <wss://joe: !"$%&'()*+,-.:;<=>@[]^_`{|}~@host/> against <about:blank>
PASS Parsing: <foo://!"$%&'()*+,-.;=_`{}~/> against <about:blank>
PASS Parsing: <wss://!"$&'()*+,-.;=_`{}~/> against <about:blank>
PASS Parsing: <foo://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank>
PASS Parsing: <wss://host/ !"$%&'()*+,-./:;<=>@[\]^_`{|}~> against <about:blank>
PASS Parsing: <foo://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
PASS Parsing: <wss://host/dir/? !"$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
PASS Parsing: <foo://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
PASS Parsing: <wss://host/dir/# !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~> against <about:blank>
PASS Parsing: <abc:rootless> against <abc://host/path>
PASS Parsing: <abc:rootless> against <abc:/path>
PASS Parsing: <abc:rootless> against <abc:path>
PASS Parsing: <abc:/rooted> against <abc://host/path>
PASS Parsing: <http://1.2.3.4.5> against <http://other.com/>
PASS Parsing: <http://1.2.3.4.5.> against <http://other.com/>
PASS Parsing: <http://0..0x300/> against <about:blank>
PASS Parsing: <http://0..0x300./> against <about:blank>
PASS Parsing: <http://256.256.256.256.256> against <http://other.com/>
PASS Parsing: <http://256.256.256.256.256.> against <http://other.com/>
PASS Parsing: <http://1.2.3.08> against <about:blank>
PASS Parsing: <http://1.2.3.08.> against <about:blank>
PASS Parsing: <http://1.2.3.09> against <about:blank>
PASS Parsing: <http://09.2.3.4> against <about:blank>
PASS Parsing: <http://09.2.3.4.> against <about:blank>
PASS Parsing: <http://01.2.3.4.5> against <about:blank>
PASS Parsing: <http://01.2.3.4.5.> against <about:blank>
PASS Parsing: <http://0x100.2.3.4> against <about:blank>
PASS Parsing: <http://0x100.2.3.4.> against <about:blank>
PASS Parsing: <http://0x1.2.3.4.5> against <about:blank>
PASS Parsing: <http://0x1.2.3.4.5.> against <about:blank>
PASS Parsing: <http://foo.1.2.3.4> against <about:blank>
PASS Parsing: <http://foo.1.2.3.4.> against <about:blank>
PASS Parsing: <http://foo.2.3.4> against <about:blank>
PASS Parsing: <http://foo.2.3.4.> against <about:blank>
PASS Parsing: <http://foo.09> against <about:blank>
PASS Parsing: <http://foo.09.> against <about:blank>
PASS Parsing: <http://foo.0x4> against <about:blank>
PASS Parsing: <http://foo.0x4.> against <about:blank>
PASS Parsing: <http://foo.09..> against <about:blank>
PASS Parsing: <http://0999999999999999999/> against <about:blank>
PASS Parsing: <http://foo.0x> against <about:blank>
PASS Parsing: <http://foo.0XFfFfFfFfFfFfFfFfFfAcE123> against <about:blank>
PASS Parsing: <http://💩.123/> against <about:blank>