| <html> |
| <head> |
| <script src="../inspector-test.js"></script> |
| <script src="../network-test.js"></script> |
| <script> |
| var iframe; |
| |
| function loadIframe() |
| { |
| iframe = document.createElement("iframe"); |
| document.body.appendChild(iframe); |
| iframe.onload = iframeLoaded; |
| iframe.src = "resources/resource.php"; |
| } |
| |
| function iframeLoaded() |
| { |
| document.body.removeChild(iframe); |
| |
| loadIframeAndChangeSrcAfterLoad(); |
| } |
| |
| function loadIframeAndChangeSrcAfterLoad() |
| { |
| iframe = document.createElement("iframe"); |
| document.body.appendChild(iframe); |
| iframe.onload = iframeLoadedChangeSrc; |
| iframe.src = "resources/resource.php"; |
| } |
| |
| function iframeLoadedChangeSrc() |
| { |
| iframe.onload = null; |
| iframe.src = "javascript:'<html></html>'"; |
| document.body.removeChild(iframe); |
| console.log("Done."); |
| } |
| |
| function test() |
| { |
| InspectorTest.addConsoleSniffer(step2); |
| InspectorTest.evaluateInPage("loadIframe()"); |
| |
| function step2() |
| { |
| var request1 = WebInspector.panel("network").requests[WebInspector.panel("network").requests.length - 2]; |
| InspectorTest.addResult(request1.url); |
| InspectorTest.addResult("resource.type: " + request1.type); |
| InspectorTest.addResult("resource.content before requesting content: " + request1.content); |
| request1.requestContent(step3); |
| } |
| |
| function step3() |
| { |
| var request1 = WebInspector.panel("network").requests[WebInspector.panel("network").requests.length - 2]; |
| InspectorTest.addResult("resource.content after requesting content: " + request1.content); |
| |
| var request2 = WebInspector.panel("network").requests[WebInspector.panel("network").requests.length - 1]; |
| InspectorTest.addResult(request2.url); |
| InspectorTest.addResult("resource.type: " + request2.type); |
| InspectorTest.addResult("resource.content before requesting content: " + request2.content); |
| request2.requestContent(step4); |
| } |
| |
| function step4() |
| { |
| var request2 = WebInspector.panel("network").requests[WebInspector.panel("network").requests.length - 1]; |
| InspectorTest.addResult("resource.content after requesting content: " + request2.content); |
| |
| InspectorTest.completeTest(); |
| } |
| } |
| </script> |
| </head> |
| <body onload="runTest()"> |
| <p> |
| Tests that if iframe is loaded and then deleted, inspector could still show its content. |
| Note that if iframe.src is changed to "javascript:'...some html...'" after |
| loading, then we have different codepath, hence two tests; |
| </p> |
| </body> |
| </html> |