Unreviewed, fix build failure
[WebKit-https.git] / ManualTests / state-objects-time-limit.html
1 <script>
2
3 function log(msg) {
4     document.getElementById("logger").innerHTML += msg + " -- ";
5 }
6
7 function startTest() {
8     try {
9         for (var i = 0; i < 101; ++i) {
10             history.pushState(0, 0, i.toString());
11             log("Successfully added item: " + i);
12         }
13     } catch(e) {
14         log(e);
15     }
16
17     setTimeout(continueTest, 30050);
18 }
19
20 function continueTest() {
21     alert(1);
22     history.pushState(0, 0, "101");
23     log("After 30+ second delay, successfully added the 101th item");
24
25     try {
26         for (var i = 0; i < 100; ++i) {
27             history.replaceState(0, 0, i.toString());
28             log("Successfully replaced with item: " + i);
29         }
30     } catch(e) {
31         alert(2);
32         log(e);
33     }
34
35     setTimeout(finishTest, 30050);
36 }
37
38 function finishTest() {
39     alert(3);
40     history.replaceState(0, 0, "100");
41     log("After 30+ second delay, successfully replaced the 100th item");
42 }
43
44 </script>
45 This test will take over a minute to run.<br>
46 100 items should successfully push, and the 101th should fail.<br>
47 After 30+ seconds, 101th should successfully push.<br>
48 Then 99 items should successfully replace, with the 100th failing.<br>
49 After 30+ seconds, the 100th should successfully replace.<br>
50 <button onclick="startTest();">Click to start test</button>
51 <div id="logger"></div>