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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/loading/doc-write-sync-third-party-script-reload.html

Issue 1883873002: Do not block document.written scripts in page reloads (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: corrected if condition Created 4 years, 8 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 <script src="../resources/testharness.js"></script> 2 <script src="../resources/testharness.js"></script>
3 <script src="../resources/testharnessreport.js"></script> 3 <script src="../resources/testharnessreport.js"></script>
4 <script> 4 <script>
5 var src = 'http://localhost:8000/loading/resources/js-loaded.js';
6 var jsLoaded = false;
7 var loadSuccess = false;
8 if (window.internals) { 5 if (window.internals) {
9 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOnSlow Connections(true); 6 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOnSlow Connections(true);
10 internals.setNetworkStateNotifierTestOnly(true); 7 internals.setNetworkStateNotifierTestOnly(true);
11 internals.setNetworkConnectionInfo('cellular3g', 2.0); 8 internals.setNetworkConnectionInfo('cellular2g', 1.0);
12 internals.evictAllResources(); 9 internals.evictAllResources();
13 10
11 // Reset the state of the singleton network state notifier.
14 window.addEventListener('beforeunload', function() { 12 window.addEventListener('beforeunload', function() {
13 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOn SlowConnections(false);
15 internals.setNetworkStateNotifierTestOnly(false); 14 internals.setNetworkStateNotifierTestOnly(false);
16 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOn SlowConnections(false);
17 }, false); 15 }, false);
18 } 16 }
19 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>'); 17
18 var crossOrigin = 'http://localhost:8000'
jkarlin 2016/04/13 18:38:36 semicolon
shivanisha 2016/04/14 17:59:55 done
19 var filePath = '/loading/resources/js-loaded.js'
jkarlin 2016/04/13 18:38:36 semicolon
shivanisha 2016/04/14 17:59:55 done
20 var jsLoaded = false;
21 var loadSuccess = false;
22
23 // First time the script will be blocked and onError will reload the page.
24 // On reload the script should not be blocked and thus the subsequent assert s
25 // will be true.
26 // forceReload(false) sets the reload to be from the cache.
27 // doc-write-sync-third-party-script-reload-no-cache.html will check for rel oads
28 // bypassing the cache.
29 src = crossOrigin + filePath;
30 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true" onE rror="internals.forceReload(false)"></scr' + 'ipt>');
jkarlin 2016/04/13 18:38:36 If you write something to local storage on error t
shivanisha 2016/04/14 17:59:55 Added
20 </script> 31 </script>
32
21 <script> 33 <script>
22 test(function () { 34 test(function () {
23 assert_true(jsLoaded); 35 assert_true(jsLoaded);
24 assert_true(loadSuccess); 36 assert_true(loadSuccess);
25 }, "Document.written scripts are not blocked in a fast connection"); 37 }, "cross origin doc.written scripts are not blocked in a page reload");
26 </script> 38 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698