<!DOCTYPE html>
<html>
<head>
<script src="../../resources/js-test.js"></script>
<script src="resources/utilities.js"></script>
</head>
<body>
<script>
if (window.internals && internals.settings)
  internals.settings.setShouldRestrictBaseURLSchemes(true);

description("Test URL segmentation");

cases = [ 
  // [URL, [SCHEME, HOST, PORT, PATH, QUERY, REF]]
  ["http://user:pass@foo:21/bar;par?b#c",    ["http:","foo","21","/bar;par","?b","#c"]],
  ["http:foo.com",                           ["http:","foo.com","","/","",""]],
  ["\\t   :foo.com   \\n",                   ["file:","","","/.../:foo.com","",""]],
  [" foo.com  ",                             ["file:","","","/.../foo.com","",""]],
  ["a:\\t foo.com",                          ["a:","",""," foo.com","",""]],
  ["http://f:21/ b ? d # e ",                ["http:","f","21","/%20b%20","?%20d%20","#%20e"]],
  ["http://f:/c",                            ["http:","f","","/c","",""]],
  ["http://f:0/c",                           ["http:","f","0","/c","",""]],
  ["http://f:00000000000000/c",              ["http:","f","0","/c","",""]],
  ["http://f:00000000000000000000080/c",     ["http:","f","0","/c","",""]],
  ["http://f:b/c",                           [":","","","","",""]],
  ["http://f: /c",                           [":","","","","",""]],
  ["http://f:\\n/c",                         ["http:","f","","/c","",""]],
  ["http://f:fifty-two/c",                   [":","","","","",""]],
  ["http://f:999999/c",                      [":","","0","","",""]],
  ["http://f: 21 / b ? d # e ",              [":","","","","",""]],
  ["",                                       ["file:","","","/.../segments-from-data-url.html","",""]],
  ["  \\t",                                  ["file:","","","/.../segments-from-data-url.html","",""]],
  [":foo.com/",                              ["file:","","","/.../","",""]],
  [":foo.com\\\\",                           ["file:","","","/.../","",""]],
  [":",                                      ["file:","","","/.../:","",""]],
  [":a",                                     ["file:","","","/.../:a","",""]],
  [":/",                                     ["file:","","","/.../","",""]],
  [":\\\\",                                  ["file:","","","/.../","",""]],
  [":#",                                     ["file:","","","/.../:","",""]],
  ["#",                                      ["file:","","","/.../segments-from-data-url.html","",""]],
  ["#/",                                     ["file:","","","/.../segments-from-data-url.html","","#/"]],
  ["#\\\\",                                  ["file:","","","/.../segments-from-data-url.html","","#\\\\"]],
  ["#;?",                                    ["file:","","","/.../segments-from-data-url.html","","#;?"]],
  ["?",                                      ["file:","","","/.../segments-from-data-url.html","",""]],
  ["/",                                      ["file:","","","/.../","",""]],
  [":23",                                    ["file:","","","/.../:23","",""]],
  ["/:23",                                   ["file:","","","/.../:23","",""]],
  ["//",                                     ["file:","","","/.../","",""]],
  ["::",                                     ["file:","","","/.../::","",""]],
  ["::23",                                   ["file:","","","/.../::23","",""]],
  ["foo://",                                 ["foo:","","","//","",""]],
  ["http://a:b@c:29/d",                      ["http:","c","29","/d","",""]],
  ["http::@c:29",                            ["http:","c","29","/","",""]],
  ["http://&a:foo(b]c@d:2/",                 ["http:","d","2","/","",""]],
  ["http://::@c@d:2",                        ["http:","d","2","/","",""]],
  ["http://foo.com:b@d/",                    ["http:","d","","/","",""]],
  ["http://foo.com/\\\\@",                   ["http:","foo.com","","//@","",""]],
  ["http:\\\\\\\\foo.com\\\\",               ["http:","foo.com","","/","",""]],
  ["http:\\\\\\\\a\\\\b:c\\\\d@foo.com\\\\", ["http:","a","","/b:c/d@foo.com/","",""]],
  ["foo:/",                                  ["foo:","","","/","",""]],
  ["foo:/bar.com/",                          ["foo:","","","/bar.com/","",""]],
  ["foo://///////",                          ["foo:","","","/////////","",""]],
  ["foo://///////bar.com/",                  ["foo:","","","/////////bar.com/","",""]],
  ["foo:////://///",                         ["foo:","","","////://///","",""]],
  ["c:/foo",                                 ["c:","","","/foo","",""]],
  ["//foo/bar",                              ["file:","foo","","/.../bar","",""]],
  ["http://foo/path;a??e#f#g",               ["http:","foo","","/path;a","??e","#f#g"]],
  ["http://foo/abcd?efgh?ijkl",              ["http:","foo","","/abcd","?efgh?ijkl",""]],
  ["http://foo/abcd#foo?bar",                ["http:","foo","","/abcd","","#foo?bar"]],
  ["[61:24:74]:98",                          ["file:","","","/.../[61:24:74]:98","",""]],
  ["http://[61:27]:98",                      [":","","0","","",""]],
  ["http:[61:27]/:foo",                      [":","","","","",""]],
  ["http://[1::2]:3:4",                      [":","","","","",""]],
  ["http://2001::1",                         [":","","","","",""]],
  ["http://[2001::1",                        [":","","","","",""]],
  ["http://2001::1]",                        [":","","","","",""]],
  ["http://2001::1]:80",                     [":","","","","",""]],
  ["http://[2001::1]",                       ["http:","[2001::1]","","/","",""]],
  ["http://[2001::1]:80",                    ["http:","[2001::1]","","/","",""]],
  ["http://[[::]]",                          [":","","","","",""]],
];

var originalBaseURL = canonicalize(".");
setBaseURL("data:text/plain,baseURL");
setShouldEllipsizeFileURLPaths(true);

for (var i = 0; i < cases.length; ++i) {
  shouldBe("segments('" + cases[i][0] + "')",
           "'" + JSON.stringify(cases[i][1]) + "'");
}

setBaseURL(originalBaseURL);
</script>
</body>
</html>
