Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <!DOCTYPE html> | |
|
jkarlin
2016/04/06 14:55:31
instead of ...-block1.html, how about ...-block-th
shivanisha
2016/04/06 20:40:09
sounds good. Will rename the three different test
| |
| 2 <script src="../resources/testharness.js"></script> | |
| 3 <script src="../resources/testharnessreport.js"></script> | |
| 4 <script> | |
| 5 var jsLoaded = false; | |
| 6 var loadsuccess = false; | |
|
Bryan McQuade
2016/04/06 12:37:21
for consistency let's name this loadSuccess
shivanisha
2016/04/06 14:18:36
done
| |
| 7 | |
| 8 src = 'http://localhost:8000/loading/resources/js-loaded.js'; | |
| 9 document.write('<scr' + 'ipt src="' + src + '" onload="loadsuccess=true"></s cr' + 'ipt>'); | |
| 10 </script> | |
| 11 | |
| 12 <script> | |
| 13 test(function () { | |
| 14 assert_true(jsLoaded); | |
| 15 assert_true(loadsuccess); | |
| 16 }, "Blocking script doesn't kick in since feature is disabled"); | |
| 17 | |
| 18 </script> | |
| 19 <script> | |
| 20 if (window.internals){ | |
| 21 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrame(true) ; | |
| 22 internals.setNetworkStateNotifierTestOnly(true); | |
| 23 internals.setNetworkConnectionInfo('cellular2g', 2.0); | |
| 24 } | |
| 25 src = './resources/js-loaded.js'; | |
| 26 jsLoaded = false; | |
| 27 loadsuccess = false; | |
| 28 document.write('<scr' + 'ipt src="' + src + '" onload="loadsuccess=true"></s cr' + 'ipt>'); | |
| 29 </script> | |
| 30 | |
| 31 <script> | |
| 32 test(function () { | |
| 33 assert_true(jsLoaded); | |
| 34 assert_true(loadsuccess); | |
| 35 }, "Same domain doc.written scripts are not blocked"); | |
| 36 </script> | |
| 37 | |
| 38 <script> | |
| 39 var jsLoaded = false; | |
| 40 var loadsuccess = false; | |
| 41 | |
| 42 src = 'http://localhost:8000/loading/resources/js-loaded.js'; | |
|
jkarlin
2016/04/06 14:55:31
It's subtle that this is a different origin. Can y
shivanisha
2016/04/06 20:40:09
sounds good
| |
| 43 document.write('<scr' + 'ipt src="' + src + '" onload="loadsuccess=true"></s cr' + 'ipt>'); | |
| 44 </script> | |
| 45 | |
| 46 <script> | |
| 47 test(function () { | |
| 48 assert_true(jsLoaded); | |
| 49 assert_true(loadsuccess); | |
| 50 }, "cross-origin script not blocked since it is cached"); | |
| 51 | |
| 52 </script> | |
| 53 <script> | |
| 54 jsLoaded = false; | |
| 55 loadsuccess = false; | |
| 56 | |
| 57 src = 'http://localhost:8000/loading/resources/js-loaded1.js'; | |
|
Bryan McQuade
2016/04/06 12:37:21
great, thanks! this is fine, but you might be able
shivanisha
2016/04/06 14:18:36
Yes, this works. Removing js-loaded1.js
| |
| 58 document.write('<scr' + 'ipt src="' + src + '" onload="loadsuccess=true"></s cr' + 'ipt>'); | |
|
Bryan McQuade
2016/04/06 12:37:21
can we also add an onError="loadFailed=true" and a
shivanisha
2016/04/06 14:18:36
Added
| |
| 59 </script> | |
| 60 | |
| 61 <script> | |
| 62 test(function () { | |
| 63 assert_false(jsLoaded); | |
| 64 assert_false(loadsuccess); | |
| 65 }, "cross origin doc.written scripts are blocked"); | |
| 66 | |
| 67 window.addEventListener('beforeunload', function() { | |
| 68 internals.setNetworkStateNotifierTestOnly(false); | |
| 69 internals.settings.setDisallowFetchForDocWrittenScriptsInMainFrame(false ); | |
| 70 }, false); | |
| 71 </script> | |
| OLD | NEW |