| <p>If this test runs without hanging, then it has passed. The visited link hash algorithm was N^2 at one point and would hang.</p> |
| <p id="test1"></p> |
| <p id="test2"></p> |
| <p id="test3"></p> |
| <p id="result">TEST DID NOT RUN YET</p> |
| |
| <script> |
| |
| if (window.testRunner) |
| testRunner.dumpAsText(); |
| |
| var oneMillionSlashes = ""; |
| for (i = 0; i < 1000000; ++i) |
| oneMillionSlashes += "/"; |
| |
| var oneMillionSlashesAndDots = ""; |
| for (i = 0; i < 333334; ++i) |
| oneMillionSlashesAndDots += "/./"; |
| |
| var oneMillionSlashesAndDoubleDots = ""; |
| for (i = 0; i < 250000; ++i) |
| oneMillionSlashesAndDoubleDots += "/../"; |
| |
| document.getElementById("test1").innerHTML = '<a href="about:test?slashes' + oneMillionSlashes + '">Link with tons of slashes</a>'; |
| document.getElementById("test2").innerHTML = '<a href="about:test?slashes' + oneMillionSlashesAndDots + '">Link with tons of slashes with dots</a>'; |
| document.getElementById("test3").innerHTML = '<a href="about:test?slashes' + oneMillionSlashesAndDoubleDots + '">Link with tons of slashes with double dots</a>'; |
| |
| document.getElementById("result").firstChild.data = "TEST PASSED"; |
| |
| </script> |