<!DOCTYPE html>
<html>
<head>
<script src="http://localhost:8000/security/xssAuditor/resources/utilities.js"></script>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.dumpChildFramesAsText();
    testRunner.waitUntilDone();
    testRunner.setXSSAuditorEnabled(true);
}
function done()
{
    if (window.testRunner)
        testRunner.notifyDone();
}
window.onload = function()
{
    sendRequestFromIFrame("http://localhost:8000/security/xssAuditor/resources/echo-intertag.pl","test=/security/xssAuditor/full-block-get-from-iframe.html&enable-full-block=1&q=<script>alert(String.fromCharCode(0x58,0x53,0x53))<\/script>","GET", done);
};
</script>
</head>
<body>
</body>
</html>
