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

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

Issue 1868413002: Add about:flags support for doc.write script blocking. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 sameOrigin = 'http://127.0.0.1:8000' 5 var sameOrigin = 'http://127.0.0.1:8000';
6 var crossOrigin = 'http://localhost:8000' 6 var crossOrigin = 'http://localhost:8000';
7 var filePath = '/loading/resources/js-loaded.js' 7 var filePath = '/loading/resources/js-loaded.js';
8 var jsLoaded = false; 8 var jsLoaded = false;
9 var loadSuccess = false; 9 var loadSuccess = false;
10 10
11 src = crossOrigin + filePath; 11 src = crossOrigin + filePath;
12 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>'); 12 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>');
13 </script> 13 </script>
14 14
15 <script> 15 <script>
16 test(function () { 16 test(function () {
17 assert_true(jsLoaded); 17 assert_true(jsLoaded);
18 assert_true(loadSuccess); 18 assert_true(loadSuccess);
19 }, "Blocking of scripts doesn't come into effect since feature is disabled") ; 19 }, "Blocking of scripts doesn't come into effect since feature is disabled") ;
20 20
21 </script> 21 </script>
22 <script> 22 <script>
23 if (window.internals) { 23 if (window.internals) {
24 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrame(true) ; 24 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOnSlow Connections(true);
25 internals.setNetworkStateNotifierTestOnly(true); 25 internals.setNetworkStateNotifierTestOnly(true);
26 internals.setNetworkConnectionInfo('cellular2g', 1.0); 26 internals.setNetworkConnectionInfo('cellular2g', 1.0);
27 internals.evictAllResources(); 27 internals.evictAllResources();
28 28
29 // Reset the state of the singleton network state notifier. 29 // Reset the state of the singleton network state notifier.
30 window.addEventListener('beforeunload', function() { 30 window.addEventListener('beforeunload', function() {
31 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrame(f alse); 31 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrameOn SlowConnections(false);
32 internals.setNetworkStateNotifierTestOnly(false); 32 internals.setNetworkStateNotifierTestOnly(false);
33 }, false); 33 }, false);
34 } 34 }
35 35
36 src = sameOrigin + filePath; 36 src = sameOrigin + filePath;
37 jsLoaded = false; 37 jsLoaded = false;
38 loadSuccess = false; 38 loadSuccess = false;
39 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>'); 39 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>');
40 </script> 40 </script>
41 41
(...skipping 10 matching lines...) Expand all
52 52
53 src = crossOrigin + filePath; 53 src = crossOrigin + filePath;
54 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>'); 54 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true"></s cr' + 'ipt>');
55 </script> 55 </script>
56 56
57 <script> 57 <script>
58 test(function () { 58 test(function () {
59 assert_true(jsLoaded); 59 assert_true(jsLoaded);
60 assert_true(loadSuccess); 60 assert_true(loadSuccess);
61 }, "cross-origin script not blocked since it is cached"); 61 }, "cross-origin script not blocked since it is cached");
62 62
jkarlin 2016/04/11 14:52:27 why this newline?
Bryan McQuade 2016/04/11 16:28:29 Oh, I didn't add a newline - just removed four whi
63 </script> 63 </script>
64 <script> 64 <script>
65 jsLoaded = false; 65 jsLoaded = false;
66 loadSuccess = false; 66 loadSuccess = false;
67 var loadFailed = false; 67 var loadFailed = false;
68 68
69 filePath = '/loading/resources/js-loaded.js?1'; 69 filePath = '/loading/resources/js-loaded.js?1';
70 src = crossOrigin + filePath; 70 src = crossOrigin + filePath;
71 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true" onE rror="loadFailed=true"></scr' + 'ipt>'); 71 document.write('<scr' + 'ipt src="' + src + '" onload="loadSuccess=true" onE rror="loadFailed=true"></scr' + 'ipt>');
72 </script> 72 </script>
73 73
74 <script> 74 <script>
75 test(function () { 75 test(function () {
76 assert_false(jsLoaded); 76 assert_false(jsLoaded);
77 assert_false(loadSuccess); 77 assert_false(loadSuccess);
78 assert_true(loadFailed); 78 assert_true(loadFailed);
79 }, "cross origin doc.written scripts are blocked"); 79 }, "cross origin doc.written scripts are blocked");
80 </script> 80 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698