Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/third_party/rust/url/tests/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 198 kB image not shown  

Quelle  urltestdata.json   Sprache: unbekannt

 
Spracherkennung für: .json vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

[
  "# Pulled from https://github.com/web-platform-tests/wpt/blob/befe66343e5f21dc464c8c772c6d20695936714f/url/resources/urltestdata.json",
  {
    "input": "http://example\t.\norg",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://user:pass@foo:21/bar;par?b#c",
    "base": "http://example.org/foo/bar",
    "href": "http://user:pass@foo:21/bar;par?b#c",
    "origin": "http://foo:21",
    "protocol": "http:",
    "username": "user",
    "password": "pass",
    "host": "foo:21",
    "hostname": "foo",
    "port": "21",
    "pathname": "/bar;par",
    "search": "?b",
    "hash": "#c"
  },
  {
    "input": "https://test:@test",
    "base": null,
    "href": "https://test@test/",
    "origin": "https://test",
    "protocol": "https:",
    "username": "test",
    "password": "",
    "host": "test",
    "hostname": "test",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https://:@test",
    "base": null,
    "href": "https://test/",
    "origin": "https://test",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "test",
    "hostname": "test",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "non-special://test:@test/x",
    "base": null,
    "href": "non-special://test@test/x",
    "origin": "null",
    "protocol": "non-special:",
    "username": "test",
    "password": "",
    "host": "test",
    "hostname": "test",
    "port": "",
    "pathname": "/x",
    "search": "",
    "hash": ""
  },
  {
    "input": "non-special://:@test/x",
    "base": null,
    "href": "non-special://test/x",
    "origin": "null",
    "protocol": "non-special:",
    "username": "",
    "password": "",
    "host": "test",
    "hostname": "test",
    "port": "",
    "pathname": "/x",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:foo.com",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/foo.com",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/foo.com",
    "search": "",
    "hash": ""
  },
  {
    "input": "\t   :foo.com   \n",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:foo.com",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:foo.com",
    "search": "",
    "hash": ""
  },
  {
    "input": " foo.com  ",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/foo.com",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/foo.com",
    "search": "",
    "hash": ""
  },
  {
    "input": "a:\t foo.com",
    "base": "http://example.org/foo/bar",
    "href": "a: foo.com",
    "origin": "null",
    "protocol": "a:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": " foo.com",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:21/ b ? d # e ",
    "base": "http://example.org/foo/bar",
    "href": "http://f:21/%20b%20?%20d%20#%20e",
    "origin": "http://f:21",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f:21",
    "hostname": "f",
    "port": "21",
    "pathname": "/%20b%20",
    "search": "?%20d%20",
    "hash": "#%20e"
  },
  {
    "input": "lolscheme:x x#x x",
    "base": null,
    "href": "lolscheme:x x#x%20x",
    "protocol": "lolscheme:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "x x",
    "search": "",
    "hash": "#x%20x"
  },
  {
    "input": "http://f:/c",
    "base": "http://example.org/foo/bar",
    "href": "http://f/c",
    "origin": "http://f",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f",
    "hostname": "f",
    "port": "",
    "pathname": "/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:0/c",
    "base": "http://example.org/foo/bar",
    "href": "http://f:0/c",
    "origin": "http://f:0",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f:0",
    "hostname": "f",
    "port": "0",
    "pathname": "/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:00000000000000/c",
    "base": "http://example.org/foo/bar",
    "href": "http://f:0/c",
    "origin": "http://f:0",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f:0",
    "hostname": "f",
    "port": "0",
    "pathname": "/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:00000000000000000000080/c",
    "base": "http://example.org/foo/bar",
    "href": "http://f/c",
    "origin": "http://f",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f",
    "hostname": "f",
    "port": "",
    "pathname": "/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:b/c",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://f: /c",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://f:\n/c",
    "base": "http://example.org/foo/bar",
    "href": "http://f/c",
    "origin": "http://f",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "f",
    "hostname": "f",
    "port": "",
    "pathname": "/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://f:fifty-two/c",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://f:999999/c",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "non-special://f:999999/c",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://f: 21 / b ? d # e ",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "  \t",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": ":foo.com/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:foo.com/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:foo.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": ":foo.com\\",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:foo.com/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:foo.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": ":",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:",
    "search": "",
    "hash": ""
  },
  {
    "input": ":a",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:a",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:a",
    "search": "",
    "hash": ""
  },
  {
    "input": ":/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:/",
    "search": "",
    "hash": ""
  },
  {
    "input": ":\\",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:/",
    "search": "",
    "hash": ""
  },
  {
    "input": ":#",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:#",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:",
    "search": "",
    "hash": ""
  },
  {
    "input": "#",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar#",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "#/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar#/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": "#/"
  },
  {
    "input": "#\\",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar#\\",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": "#\\"
  },
  {
    "input": "#;?",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar#;?",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": "#;?"
  },
  {
    "input": "?",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar?",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": ":23",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:23",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:23",
    "search": "",
    "hash": ""
  },
  {
    "input": "/:23",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/:23",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/:23",
    "search": "",
    "hash": ""
  },
  {
    "input": "\\x",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/x",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/x",
    "search": "",
    "hash": ""
  },
  {
    "input": "\\\\x\\hello",
    "base": "http://example.org/foo/bar",
    "href": "http://x/hello",
    "origin": "http://x",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "x",
    "hostname": "x",
    "port": "",
    "pathname": "/hello",
    "search": "",
    "hash": ""
  },
  {
    "input": "::",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/::",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/::",
    "search": "",
    "hash": ""
  },
  {
    "input": "::23",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/::23",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/::23",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo://",
    "base": "http://example.org/foo/bar",
    "href": "foo://",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://a:b@c:29/d",
    "base": "http://example.org/foo/bar",
    "href": "http://a:b@c:29/d",
    "origin": "http://c:29",
    "protocol": "http:",
    "username": "a",
    "password": "b",
    "host": "c:29",
    "hostname": "c",
    "port": "29",
    "pathname": "/d",
    "search": "",
    "hash": ""
  },
  {
    "input": "http::@c:29",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/:@c:29",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/:@c:29",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://&a:foo(b]c@d:2/",
    "base": "http://example.org/foo/bar",
    "href": "http://&a:foo(b%5Dc@d:2/",
    "origin": "http://d:2",
    "protocol": "http:",
    "username": "&a",
    "password": "foo(b%5Dc",
    "host": "d:2",
    "hostname": "d",
    "port": "2",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://::@c@d:2",
    "base": "http://example.org/foo/bar",
    "href": "http://:%3A%40c@d:2/",
    "origin": "http://d:2",
    "protocol": "http:",
    "username": "",
    "password": "%3A%40c",
    "host": "d:2",
    "hostname": "d",
    "port": "2",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo.com:b@d/",
    "base": "http://example.org/foo/bar",
    "href": "http://foo.com:b@d/",
    "origin": "http://d",
    "protocol": "http:",
    "username": "foo.com",
    "password": "b",
    "host": "d",
    "hostname": "d",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo.com/\\@",
    "base": "http://example.org/foo/bar",
    "href": "http://foo.com//@",
    "origin": "http://foo.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo.com",
    "hostname": "foo.com",
    "port": "",
    "pathname": "//@",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:\\\\foo.com\\",
    "base": "http://example.org/foo/bar",
    "href": "http://foo.com/",
    "origin": "http://foo.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo.com",
    "hostname": "foo.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:\\\\a\\b:c\\d@foo.com\\",
    "base": "http://example.org/foo/bar",
    "href": "http://a/b:c/d@foo.com/",
    "origin": "http://a",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "a",
    "hostname": "a",
    "port": "",
    "pathname": "/b:c/d@foo.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo:/",
    "base": "http://example.org/foo/bar",
    "href": "foo:/",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo:/bar.com/",
    "base": "http://example.org/foo/bar",
    "href": "foo:/bar.com/",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/bar.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo://///////",
    "base": "http://example.org/foo/bar",
    "href": "foo://///////",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "///////",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo://///////bar.com/",
    "base": "http://example.org/foo/bar",
    "href": "foo://///////bar.com/",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "///////bar.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "foo:////://///",
    "base": "http://example.org/foo/bar",
    "href": "foo:////://///",
    "origin": "null",
    "protocol": "foo:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "//://///",
    "search": "",
    "hash": ""
  },
  {
    "input": "c:/foo",
    "base": "http://example.org/foo/bar",
    "href": "c:/foo",
    "origin": "null",
    "protocol": "c:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "//foo/bar",
    "base": "http://example.org/foo/bar",
    "href": "http://foo/bar",
    "origin": "http://foo",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo/path;a??e#f#g",
    "base": "http://example.org/foo/bar",
    "href": "http://foo/path;a??e#f#g",
    "origin": "http://foo",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/path;a",
    "search": "??e",
    "hash": "#f#g"
  },
  {
    "input": "http://foo/abcd?efgh?ijkl",
    "base": "http://example.org/foo/bar",
    "href": "http://foo/abcd?efgh?ijkl",
    "origin": "http://foo",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/abcd",
    "search": "?efgh?ijkl",
    "hash": ""
  },
  {
    "input": "http://foo/abcd#foo?bar",
    "base": "http://example.org/foo/bar",
    "href": "http://foo/abcd#foo?bar",
    "origin": "http://foo",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/abcd",
    "search": "",
    "hash": "#foo?bar"
  },
  {
    "input": "[61:24:74]:98",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/[61:24:74]:98",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/[61:24:74]:98",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:[61:27]/:foo",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/[61:27]/:foo",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/[61:27]/:foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://[1::2]:3:4",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://2001::1",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://2001::1]",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://2001::1]:80",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://[2001::1]",
    "base": "http://example.org/foo/bar",
    "href": "http://[2001::1]/",
    "origin": "http://[2001::1]",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "[2001::1]",
    "hostname": "[2001::1]",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://[::127.0.0.1]",
    "base": "http://example.org/foo/bar",
    "href": "http://[::7f00:1]/",
    "origin": "http://[::7f00:1]",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "[::7f00:1]",
    "hostname": "[::7f00:1]",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://[::127.0.0.1.]",
    "base": "http://example.org/foo/bar",
    "failure": true
  },
  {
    "input": "http://[0:0:0:0:0:0:13.1.68.3]",
    "base": "http://example.org/foo/bar",
    "href": "http://[::d01:4403]/",
    "origin": "http://[::d01:4403]",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "[::d01:4403]",
    "hostname": "[::d01:4403]",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://[2001::1]:80",
    "base": "http://example.org/foo/bar",
    "href": "http://[2001::1]/",
    "origin": "http://[2001::1]",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "[2001::1]",
    "hostname": "[2001::1]",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/example.com/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ftp://example.com/",
    "origin": "ftp://example.com",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "https://example.com/",
    "origin": "https://example.com",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "madeupscheme:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "madeupscheme:/example.com/",
    "origin": "null",
    "protocol": "madeupscheme:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "file:///example.com/",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file://example:1/",
    "base": null,
    "failure": true
  },
  {
    "input": "file://example:test/",
    "base": null,
    "failure": true
  },
  {
    "input": "file://example%/",
    "base": null,
    "failure": true
  },
  {
    "input": "file://[example]/",
    "base": null,
    "failure": true
  },
  {
    "input": "ftps:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ftps:/example.com/",
    "origin": "null",
    "protocol": "ftps:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "gopher:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "gopher:/example.com/",
    "origin": "null",
    "protocol": "gopher:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ws://example.com/",
    "origin": "ws://example.com",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "wss://example.com/",
    "origin": "wss://example.com",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "data:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "data:/example.com/",
    "origin": "null",
    "protocol": "data:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "javascript:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "javascript:/example.com/",
    "origin": "null",
    "protocol": "javascript:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "mailto:/example.com/",
    "base": "http://example.org/foo/bar",
    "href": "mailto:/example.com/",
    "origin": "null",
    "protocol": "mailto:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/example.com/",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ftp://example.com/",
    "origin": "ftp://example.com",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "https://example.com/",
    "origin": "https://example.com",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "madeupscheme:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "madeupscheme:example.com/",
    "origin": "null",
    "protocol": "madeupscheme:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftps:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ftps:example.com/",
    "origin": "null",
    "protocol": "ftps:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "gopher:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "gopher:example.com/",
    "origin": "null",
    "protocol": "gopher:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "ws://example.com/",
    "origin": "ws://example.com",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "wss://example.com/",
    "origin": "wss://example.com",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "data:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "data:example.com/",
    "origin": "null",
    "protocol": "data:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "javascript:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "javascript:example.com/",
    "origin": "null",
    "protocol": "javascript:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "mailto:example.com/",
    "base": "http://example.org/foo/bar",
    "href": "mailto:example.com/",
    "origin": "null",
    "protocol": "mailto:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "/a/b/c",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/a/b/c",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/a/b/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "/a/ /c",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/a/%20/c",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/a/%20/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "/a%2fc",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/a%2fc",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/a%2fc",
    "search": "",
    "hash": ""
  },
  {
    "input": "/a/%2f/c",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/a/%2f/c",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/a/%2f/c",
    "search": "",
    "hash": ""
  },
  {
    "input": "#β",
    "base": "http://example.org/foo/bar",
    "href": "http://example.org/foo/bar#%CE%B2",
    "origin": "http://example.org",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.org",
    "hostname": "example.org",
    "port": "",
    "pathname": "/foo/bar",
    "search": "",
    "hash": "#%CE%B2"
  },
  {
    "input": "data:text/html,test#test",
    "base": "http://example.org/foo/bar",
    "href": "data:text/html,test#test",
    "origin": "null",
    "protocol": "data:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "text/html,test",
    "search": "",
    "hash": "#test"
  },
  {
    "input": "tel:1234567890",
    "base": "http://example.org/foo/bar",
    "href": "tel:1234567890",
    "origin": "null",
    "protocol": "tel:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "1234567890",
    "search": "",
    "hash": ""
  },
  "# Based on https://felixfbecker.github.io/whatwg-url-custom-host-repro/",
  {
    "input": "ssh://example.com/foo/bar.git",
    "base": "http://example.org/",
    "href": "ssh://example.com/foo/bar.git",
    "origin": "null",
    "protocol": "ssh:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/bar.git",
    "search": "",
    "hash": ""
  },
  "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/file.html",
  {
    "input": "file:c:\\foo\\bar.html",
    "base": "file:///tmp/mock/path",
    "href": "file:///c:/foo/bar.html",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/c:/foo/bar.html",
    "search": "",
    "hash": ""
  },
  {
    "input": "  File:c|////foo\\bar.html",
    "base": "file:///tmp/mock/path",
    "href": "file:///c:////foo/bar.html",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/c:////foo/bar.html",
    "search": "",
    "hash": ""
  },
  {
    "input": "C|/foo/bar",
    "base": "file:///tmp/mock/path",
    "href": "file:///C:/foo/bar",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/C:/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "/C|\\foo\\bar",
    "base": "file:///tmp/mock/path",
    "href": "file:///C:/foo/bar",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/C:/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "//C|/foo/bar",
    "base": "file:///tmp/mock/path",
    "href": "file:///C:/foo/bar",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/C:/foo/bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "//server/file",
    "base": "file:///tmp/mock/path",
    "href": "file://server/file",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "server",
    "hostname": "server",
    "port": "",
    "pathname": "/file",
    "search": "",
    "hash": ""
  },
  {
    "input": "\\\\server\\file",
    "base": "file:///tmp/mock/path",
    "href": "file://server/file",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "server",
    "hostname": "server",
    "port": "",
    "pathname": "/file",
    "search": "",
    "hash": ""
  },
  {
    "input": "/\\server/file",
    "base": "file:///tmp/mock/path",
    "href": "file://server/file",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "server",
    "hostname": "server",
    "port": "",
    "pathname": "/file",
    "search": "",
    "hash": ""
  },
  {
    "input": "file:///foo/bar.txt",
    "base": "file:///tmp/mock/path",
    "href": "file:///foo/bar.txt",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/foo/bar.txt",
    "search": "",
    "hash": ""
  },
  {
    "input": "file:///home/me",
    "base": "file:///tmp/mock/path",
    "href": "file:///home/me",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/home/me",
    "search": "",
    "hash": ""
  },
  {
    "input": "//",
    "base": "file:///tmp/mock/path",
    "href": "file:///",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "///",
    "base": "file:///tmp/mock/path",
    "href": "file:///",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "///test",
    "base": "file:///tmp/mock/path",
    "href": "file:///test",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/test",
    "search": "",
    "hash": ""
  },
  {
    "input": "file://test",
    "base": "file:///tmp/mock/path",
    "href": "file://test/",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "test",
    "hostname": "test",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file://localhost",
    "base": "file:///tmp/mock/path",
    "href": "file:///",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file://localhost/",
    "base": "file:///tmp/mock/path",
    "href": "file:///",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file://localhost/test",
    "base": "file:///tmp/mock/path",
    "href": "file:///test",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/test",
    "search": "",
    "hash": ""
  },
  {
    "input": "test",
    "base": "file:///tmp/mock/path",
    "href": "file:///tmp/mock/test",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/tmp/mock/test",
    "search": "",
    "hash": ""
  },
  {
    "input": "file:test",
    "base": "file:///tmp/mock/path",
    "href": "file:///tmp/mock/test",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/tmp/mock/test",
    "search": "",
    "hash": ""
  },
  "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/script-tests/path.js",
  {
    "input": "http://example.com/././foo",
    "base": null,
    "href": "http://example.com/foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/./.foo",
    "base": null,
    "href": "http://example.com/.foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/.foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/.",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/./",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar/..",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar/../",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/..bar",
    "base": null,
    "href": "http://example.com/foo/..bar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/..bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar/../ton",
    "base": null,
    "href": "http://example.com/foo/ton",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/ton",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar/../ton/../../a",
    "base": null,
    "href": "http://example.com/a",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/a",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/../../..",
    "base": null,
    "href": "http://example.com/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/../../../ton",
    "base": null,
    "href": "http://example.com/ton",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/ton",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/%2e",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/%2e%2",
    "base": null,
    "href": "http://example.com/foo/%2e%2",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/%2e%2",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar",
    "base": null,
    "href": "http://example.com/%2e.bar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%2e.bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com////../..",
    "base": null,
    "href": "http://example.com//",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "//",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar//../..",
    "base": null,
    "href": "http://example.com/foo/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo/bar//..",
    "base": null,
    "href": "http://example.com/foo/bar/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo/bar/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo",
    "base": null,
    "href": "http://example.com/foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/%20foo",
    "base": null,
    "href": "http://example.com/%20foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%20foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%",
    "base": null,
    "href": "http://example.com/foo%",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%2",
    "base": null,
    "href": "http://example.com/foo%2",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%2",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%2zbar",
    "base": null,
    "href": "http://example.com/foo%2zbar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%2zbar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%2©zbar",
    "base": null,
    "href": "http://example.com/foo%2%C3%82%C2%A9zbar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%2%C3%82%C2%A9zbar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%41%7a",
    "base": null,
    "href": "http://example.com/foo%41%7a",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%41%7a",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo\t\u0091%91",
    "base": null,
    "href": "http://example.com/foo%C2%91%91",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%C2%91%91",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo%00%51",
    "base": null,
    "href": "http://example.com/foo%00%51",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foo%00%51",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/(%28:%3A%29)",
    "base": null,
    "href": "http://example.com/(%28:%3A%29)",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/(%28:%3A%29)",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/%3A%3a%3C%3c",
    "base": null,
    "href": "http://example.com/%3A%3a%3C%3c",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%3A%3a%3C%3c",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/foo\tbar",
    "base": null,
    "href": "http://example.com/foobar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/foobar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com\\\\foo\\\\bar",
    "base": null,
    "href": "http://example.com//foo//bar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "//foo//bar",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd",
    "base": null,
    "href": "http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%7Ffp3%3Eju%3Dduvgw%3Dd",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/@asdf%40",
    "base": null,
    "href": "http://example.com/@asdf%40",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/@asdf%40",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/你好你好",
    "base": null,
    "href": "http://example.com/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%E4%BD%A0%E5%A5%BD%E4%BD%A0%E5%A5%BD",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/‥/foo",
    "base": null,
    "href": "http://example.com/%E2%80%A5/foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%E2%80%A5/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com//foo",
    "base": null,
    "href": "http://example.com/%EF%BB%BF/foo",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%EF%BB%BF/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://example.com/‮/foo/‭/bar",
    "base": null,
    "href": "http://example.com/%E2%80%AE/foo/%E2%80%AD/bar",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/%E2%80%AE/foo/%E2%80%AD/bar",
    "search": "",
    "hash": ""
  },
  "# Based on http://trac.webkit.org/browser/trunk/LayoutTests/fast/url/script-tests/relative.js",
  {
    "input": "http://www.google.com/foo?bar=baz#",
    "base": null,
    "href": "http://www.google.com/foo?bar=baz#",
    "origin": "http://www.google.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www.google.com",
    "hostname": "www.google.com",
    "port": "",
    "pathname": "/foo",
    "search": "?bar=baz",
    "hash": ""
  },
  {
    "input": "http://www.google.com/foo?bar=baz# »",
    "base": null,
    "href": "http://www.google.com/foo?bar=baz#%20%C2%BB",
    "origin": "http://www.google.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www.google.com",
    "hostname": "www.google.com",
    "port": "",
    "pathname": "/foo",
    "search": "?bar=baz",
    "hash": "#%20%C2%BB"
  },
  {
    "input": "data:test# »",
    "base": null,
    "href": "data:test#%20%C2%BB",
    "origin": "null",
    "protocol": "data:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "test",
    "search": "",
    "hash": "#%20%C2%BB"
  },
  {
    "input": "http://www.google.com",
    "base": null,
    "href": "http://www.google.com/",
    "origin": "http://www.google.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www.google.com",
    "hostname": "www.google.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://192.0x00A80001",
    "base": null,
    "href": "http://192.168.0.1/",
    "origin": "http://192.168.0.1",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "192.168.0.1",
    "hostname": "192.168.0.1",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://www/foo%2Ehtml",
    "base": null,
    "href": "http://www/foo%2Ehtml",
    "origin": "http://www",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www",
    "hostname": "www",
    "port": "",
    "pathname": "/foo%2Ehtml",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://www/foo/%2E/html",
    "base": null,
    "href": "http://www/foo/html",
    "origin": "http://www",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www",
    "hostname": "www",
    "port": "",
    "pathname": "/foo/html",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://user:pass@/",
    "base": null,
    "failure": true
  },
  {
    "input": "http://%25DOMAIN:foobar@foodomain.com/",
    "base": null,
    "href": "http://%25DOMAIN:foobar@foodomain.com/",
    "origin": "http://foodomain.com",
    "protocol": "http:",
    "username": "%25DOMAIN",
    "password": "foobar",
    "host": "foodomain.com",
    "hostname": "foodomain.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:\\\\www.google.com\\foo",
    "base": null,
    "href": "http://www.google.com/foo",
    "origin": "http://www.google.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "www.google.com",
    "hostname": "www.google.com",
    "port": "",
    "pathname": "/foo",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo:80/",
    "base": null,
    "href": "http://foo/",
    "origin": "http://foo",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo:81/",
    "base": null,
    "href": "http://foo:81/",
    "origin": "http://foo:81",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "foo:81",
    "hostname": "foo",
    "port": "81",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "httpa://foo:80/",
    "base": null,
    "href": "httpa://foo:80/",
    "origin": "null",
    "protocol": "httpa:",
    "username": "",
    "password": "",
    "host": "foo:80",
    "hostname": "foo",
    "port": "80",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http://foo:-80/",
    "base": null,
    "failure": true
  },
  {
    "input": "https://foo:443/",
    "base": null,
    "href": "https://foo/",
    "origin": "https://foo",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https://foo:80/",
    "base": null,
    "href": "https://foo:80/",
    "origin": "https://foo:80",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "foo:80",
    "hostname": "foo",
    "port": "80",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp://foo:21/",
    "base": null,
    "href": "ftp://foo/",
    "origin": "ftp://foo",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp://foo:80/",
    "base": null,
    "href": "ftp://foo:80/",
    "origin": "ftp://foo:80",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "foo:80",
    "hostname": "foo",
    "port": "80",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "gopher://foo:70/",
    "base": null,
    "href": "gopher://foo:70/",
    "origin": "null",
    "protocol": "gopher:",
    "username": "",
    "password": "",
    "host": "foo:70",
    "hostname": "foo",
    "port": "70",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "gopher://foo:443/",
    "base": null,
    "href": "gopher://foo:443/",
    "origin": "null",
    "protocol": "gopher:",
    "username": "",
    "password": "",
    "host": "foo:443",
    "hostname": "foo",
    "port": "443",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws://foo:80/",
    "base": null,
    "href": "ws://foo/",
    "origin": "ws://foo",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws://foo:81/",
    "base": null,
    "href": "ws://foo:81/",
    "origin": "ws://foo:81",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "foo:81",
    "hostname": "foo",
    "port": "81",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws://foo:443/",
    "base": null,
    "href": "ws://foo:443/",
    "origin": "ws://foo:443",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "foo:443",
    "hostname": "foo",
    "port": "443",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws://foo:815/",
    "base": null,
    "href": "ws://foo:815/",
    "origin": "ws://foo:815",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "foo:815",
    "hostname": "foo",
    "port": "815",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss://foo:80/",
    "base": null,
    "href": "wss://foo:80/",
    "origin": "wss://foo:80",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "foo:80",
    "hostname": "foo",
    "port": "80",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss://foo:81/",
    "base": null,
    "href": "wss://foo:81/",
    "origin": "wss://foo:81",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "foo:81",
    "hostname": "foo",
    "port": "81",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss://foo:443/",
    "base": null,
    "href": "wss://foo/",
    "origin": "wss://foo",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "foo",
    "hostname": "foo",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss://foo:815/",
    "base": null,
    "href": "wss://foo:815/",
    "origin": "wss://foo:815",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "foo:815",
    "hostname": "foo",
    "port": "815",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:/example.com/",
    "base": null,
    "href": "http://example.com/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp:/example.com/",
    "base": null,
    "href": "ftp://example.com/",
    "origin": "ftp://example.com",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https:/example.com/",
    "base": null,
    "href": "https://example.com/",
    "origin": "https://example.com",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "madeupscheme:/example.com/",
    "base": null,
    "href": "madeupscheme:/example.com/",
    "origin": "null",
    "protocol": "madeupscheme:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "file:/example.com/",
    "base": null,
    "href": "file:///example.com/",
    "protocol": "file:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftps:/example.com/",
    "base": null,
    "href": "ftps:/example.com/",
    "origin": "null",
    "protocol": "ftps:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "gopher:/example.com/",
    "base": null,
    "href": "gopher:/example.com/",
    "origin": "null",
    "protocol": "gopher:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ws:/example.com/",
    "base": null,
    "href": "ws://example.com/",
    "origin": "ws://example.com",
    "protocol": "ws:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "wss:/example.com/",
    "base": null,
    "href": "wss://example.com/",
    "origin": "wss://example.com",
    "protocol": "wss:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "data:/example.com/",
    "base": null,
    "href": "data:/example.com/",
    "origin": "null",
    "protocol": "data:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "javascript:/example.com/",
    "base": null,
    "href": "javascript:/example.com/",
    "origin": "null",
    "protocol": "javascript:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "mailto:/example.com/",
    "base": null,
    "href": "mailto:/example.com/",
    "origin": "null",
    "protocol": "mailto:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "/example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "http:example.com/",
    "base": null,
    "href": "http://example.com/",
    "origin": "http://example.com",
    "protocol": "http:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftp:example.com/",
    "base": null,
    "href": "ftp://example.com/",
    "origin": "ftp://example.com",
    "protocol": "ftp:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "https:example.com/",
    "base": null,
    "href": "https://example.com/",
    "origin": "https://example.com",
    "protocol": "https:",
    "username": "",
    "password": "",
    "host": "example.com",
    "hostname": "example.com",
    "port": "",
    "pathname": "/",
    "search": "",
    "hash": ""
  },
  {
    "input": "madeupscheme:example.com/",
    "base": null,
    "href": "madeupscheme:example.com/",
    "origin": "null",
    "protocol": "madeupscheme:",
    "username": "",
    "password": "",
    "host": "",
    "hostname": "",
    "port": "",
    "pathname": "example.com/",
    "search": "",
    "hash": ""
  },
  {
    "input": "ftps:example.com/",
    "base": null,
    "href": "ftps:example.com/",
--> --------------------

--> maximum size reached

--> --------------------

[ zur Elbe Produktseite wechseln0.75Quellennavigators  ]