| <head> |
| <base href="file:///BASE/"> |
| <style> |
| |
| table { border-spacing: 0; border-collapse: collapse; border: 1px solid #999; } |
| thead { font: x-small 'Lucida Grande'; } |
| thead > tr { background-color: #dee; border-bottom: 1px solid #999; } |
| td, th { padding: 4px; border-width: 0 1px; border-style: solid; border-color: #999 } |
| tbody { font: small monospace; } |
| tbody > tr:nth-child(odd) { background-color: #eee; } |
| </style> |
| </head> |
| <body> |
| <p> |
| The following table shows how URLs are parsed and canonicalized. The base URI |
| for this document is <tt>file:///BASE/</tt>. |
| </p> |
| <table> |
| <thead> |
| <tr> |
| <th>URL</th> |
| <th>href</th> |
| <th>host</th> |
| <th>pathname</th> |
| </tr> |
| </thead> |
| <tbody id = "results"></tbody> |
| </table> |
| <script> |
| if (window.layoutTestController) |
| layoutTestController.dumpAsText(); |
| |
| function test(url) |
| { |
| var anchor = document.createElement("a"); |
| anchor.href = url; |
| |
| var row = document.getElementById("results").appendChild(document.createElement("tr")); |
| row.appendChild(document.createElement("td")).appendChild(anchor).appendChild(document.createTextNode(url)); |
| row.appendChild(document.createElement("td")).appendChild(document.createTextNode(anchor.href)); |
| row.appendChild(document.createElement("td")).appendChild(document.createTextNode(anchor.host)); |
| row.appendChild(document.createElement("td")).appendChild(document.createTextNode(anchor.pathname)); |
| } |
| |
| var testCases = [ |
| "", |
| "test", |
| "/", |
| "/test", |
| "//", |
| "//test", |
| "///", |
| "///test", |
| "file:", |
| "file:test", |
| "file:/", |
| "file:/test", |
| "file://", |
| "file://test", |
| "file:///", |
| "file:///test", |
| "file://localhost", |
| "file://localhost/", |
| "file://localhost/test", |
| "http:", |
| "http:/", |
| "http://", |
| "http:///", |
| "http:////", |
| "http://localhost", |
| "http://localhost/", |
| "http://localhost/test", |
| "x-webkit:", |
| "x-webkit:test", |
| "x-webkit:/", |
| "x-webkit:/test", |
| "x-webkit://", |
| "x-webkit://test", |
| "x-webkit:///", |
| "x-webkit:///test", |
| ]; |
| |
| for (var i = 0; i < testCases.length; ++i) |
| test(testCases[i]); |
| </script> |
| </body> |