link-header-preload-delay-onload.html (1722B)
1 <!DOCTYPE html> 2 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharnessreport.js"></script> 4 <script src="/preload/resources/preload_helper.js"></script> 5 <script> 6 var t = async_test('Makes sure that Link headers preload resources and block window.onload after resource discovery'); 7 </script> 8 <body> 9 <style> 10 #background { 11 width: 200px; 12 height: 200px; 13 background-image: url(resources/square.png?background); 14 } 15 </style> 16 <link rel="stylesheet" href="resources/dummy.css?link-header-preload-delay-onload"> 17 <script src="resources/dummy.js?link-header-preload-delay-onload"></script> 18 <div id="background"></div> 19 <script> 20 document.write('<img src="resources/square.png?link-header-preload-delay-onload">'); 21 window.addEventListener("load", t.step_func(function() { 22 verifyPreloadAndRTSupport(); 23 var entries = performance.getEntriesByType("resource"); 24 var found_background_first = false; 25 for (var i = 0; i < entries.length; ++i) { 26 var entry = entries[i]; 27 if (entry.name.indexOf("square") != -1) { 28 if (entry.name.indexOf("background") != -1) 29 found_background_first = true; 30 break; 31 } 32 } 33 assert_true(found_background_first); 34 verifyLoadedAndNoDoubleDownload("resources/square.png?link-header-preload-delay-onload"); 35 verifyLoadedAndNoDoubleDownload("resources/square.png?background"); 36 verifyLoadedAndNoDoubleDownload("resources/dummy.js?link-header-preload-delay-onload"); 37 verifyLoadedAndNoDoubleDownload("resources/dummy.css?link-header-preload-delay-onload"); 38 t.done(); 39 })); 40 </script>