Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / fast / url / resources / utilities.js
blob631bdeca9c56775f5cf8a78577e11fadab75357c
1 // Start the bidding at 42 for no particular reason.
2 var lastID = 42;
4 function canonicalize(url)
6   // It would be more elegant to use the DOM here, but we use document.write()
7   // so the tests run correctly in Firefox.
8   var id = ++lastID;
9   document.write("<a id='" + id + "' href='" + url + "'></a>");
10   return document.getElementById(id).href;
13 function setBaseURL(url)
15     // It would be more elegant to use the DOM here, but we chose document.write()
16     // so the tests ran correctly in Firefox at the time we originally wrote them.
18     // Remove any existing base elements.
19     var existingBase = document.getElementsByTagName('base');
20     while (existingBase.length) {
21         var element = existingBase[0];
22         element.parentNode.removeChild(element);
23     }
25     // Add a new base element.
26     document.write('<base href="' + url + '">');
29 function segments(url)
31   // It would be more elegant to use the DOM here, but we use document.write()
32   // so the tests run correctly in Firefox.
33   var id = ++lastID;
34   document.write("<a id='" + id + "' href='" + url + "'></a>");
35   var elmt = document.getElementById(id);
36   return JSON.stringify([
37     elmt.protocol,
38     elmt.hostname,
39     elmt.port,
40     elmt.pathname,
41     elmt.search,
42     elmt.hash
43   ]);