blob: db64a3b57ec1173c39c9e5823c05dcf025dab6fc [file] [log] [blame]
<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>