Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: LayoutTests/http/tests/history/popstate-fires-with-pending-requests.html

Issue 136463002: Don't fire popstate event on initial document load (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: fix replacestate-in-iframe test Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <script src="../../js-test-resources/js-test.js"></script> 4 <script src="../../js-test-resources/js-test.js"></script>
5 </head> 5 </head>
6 <body> 6 <body>
7 <p id="description"></p> 7 <p id="description"></p>
8 <div id="console"></div> 8 <div id="console"></div>
9 9
10 <script> 10 <script>
11 description('Tests that popstate events fire when going back, even when there ar e resource requests pending.'); 11 description('Tests that popstate events fire when going back, even when there ar e resource requests pending.');
12 12
13 onpopstate = function(event) 13 window.onload = function()
14 { 14 {
15 if (event.state) {
16 shouldBe('event.state', '"newState1"');
17 // Stop the pending image request, otherwise the DRT doesn't consider th e
18 // test over.
19 window.stop();
20 finishJSTest();
21 return;
22 }
23
24 debug('Starting slow image request'); 15 debug('Starting slow image request');
25 16
26 var slowImage = document.createElement('img'); 17 var slowImage = document.createElement('img');
27 slowImage.src = 'resources/slow-image.php'; 18 slowImage.src = 'resources/slow-image.php';
28 document.body.appendChild(slowImage); 19 document.body.appendChild(slowImage);
29 20
30 debug('Pushing newState1'); 21 debug('Pushing newState1');
31 history.pushState('newState1', null, '?newState1'); 22 history.pushState('newState1', null, '?newState1');
32 23
33 setTimeout(function() { 24 setTimeout(function() {
34 debug('Current search: ' + location.search); 25 debug('Current search: ' + location.search);
35 26
36 debug('Pushing newState2'); 27 debug('Pushing newState2');
37 history.pushState('newState2', null, '?newState2'); 28 history.pushState('newState2', null, '?newState2');
38 setTimeout(function() { 29 setTimeout(function() {
39 debug('Current search: ' + location.search); 30 debug('Current search: ' + location.search);
40 debug('Going back'); 31 debug('Going back');
41 history.back(); 32 history.back();
42 }, 0); 33 }, 0);
43 }, 0); 34 }, 0);
44 } 35 }
45 36
37 window.onpopstate = function(event)
38 {
39 shouldBe('event.state', '"newState1"');
40 // Stop the pending image request, otherwise the DRT doesn't consider the
41 // test over.
42 window.stop();
43 finishJSTest();
44 }
46 45
47 var jsTestIsAsync = true; 46 var jsTestIsAsync = true;
48 </script> 47 </script>
49 48
50 </body> 49 </body>
51 </html> 50 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698