<!DOCTYPE html>
<html>
<head>
    <title>Test for Bug 33687: window.onload never fires if page contains a &lt;script src=foo>
    whose load is cancelled by resource load delegate returning null from willSendRequest</title>
    <script>
        if (window.layoutTestController) {
            layoutTestController.dumpAsText();
            layoutTestController.setWillSendRequestReturnsNull(true);
        }

        window.onload = function() {
            var result = document.getElementById("result");
            if (!window.layoutTestController) {
                result.innerText = "This test can only be run in DumpRenderTree.";
                return;
            }
            result.innerText = "PASSED";
        };
    </script>
    <script src="http://www.example.com/"></script>
</head>
<body>
    <p>Test for <a href="http://webkit.org/b/33687">Bug 33687: window.onload never fires if page
    contains a &lt;script src=foo> whose load is cancelled by resource load delegate returning null
    from willSendRequest</a>. If the test passes, you should see the word "PASSED" below.</p>
    <div id=result>FAILED</div>
</body>
</html>

