<html>
<head>
<script type="text/javascript" src="../inspector-protocol-test.js"></script>
<script type="text/javascript" src="interception-test.js"></script>

<script>
function appendIframe()
{
    var iframe = document.createElement("iframe");
    iframe.src = "resources/redirect-iframe.html";
    document.body.appendChild(iframe);
}

function test()
{
    var requestInterceptedDict = {
        "redirect-iframe.html": InspectorTest.allowRequest,
        "redirect1.pl": function(event) {
            var rawResponse =
                "HTTP/1.1 302 Found\r\n" +
                "Location: final.js\r\n\r\n";
            InspectorTest.mockResponse(event, rawResponse);
        },
        "final.js": InspectorTest.allowRequest,
    };

    InspectorTest.startInterceptionTest(requestInterceptedDict, 1);
}
</script>
</head>
<body onload="runTest();">
<p>Tests a mock 302 resource.</a>
</p>
</body>
</html>
