blob: 5cc44e314f59a5fa959b9b4576bd3f5f8e8be4f0 [file] [log] [blame]
<script>
function log(msg) {
document.getElementById("logger").innerHTML += msg + " -- ";
}
function startTest() {
try {
for (var i = 0; i < 101; ++i) {
history.pushState(0, 0, i.toString());
log("Successfully added item: " + i);
}
} catch(e) {
log(e);
}
setTimeout(continueTest, 30050);
}
function continueTest() {
alert(1);
history.pushState(0, 0, "101");
log("After 30+ second delay, successfully added the 101th item");
try {
for (var i = 0; i < 100; ++i) {
history.replaceState(0, 0, i.toString());
log("Successfully replaced with item: " + i);
}
} catch(e) {
alert(2);
log(e);
}
setTimeout(finishTest, 30050);
}
function finishTest() {
alert(3);
history.replaceState(0, 0, "100");
log("After 30+ second delay, successfully replaced the 100th item");
}
</script>
This test will take over a minute to run.<br>
100 items should successfully push, and the 101th should fail.<br>
After 30+ seconds, 101th should successfully push.<br>
Then 99 items should successfully replace, with the 100th failing.<br>
After 30+ seconds, the 100th should successfully replace.<br>
<button onclick="startTest();">Click to start test</button>
<div id="logger"></div>