<!DOCTYPE html>
<html>
<head>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.setHandlesAuthenticationChallenges(true);
    testRunner.setAuthenticationUsername("webkit");
    testRunner.setAuthenticationPassword("rocks");
    testRunner.waitUntilDone();
}

function done()
{
    document.body.removeChild(document.getElementById("frame"));
    if (window.testRunner)
        testRunner.notifyDone();
}

function notifyFrameDidLoad(frame)
{
    frame.onload = done;
    frame.src = "http://127.0.0.1:8000/a//b/non-existent-file.html";
}
</script>
</head>
<body>
<iframe id="frame" src="resources/basic-auth-testing.php?username=webkit&password=rocks" onload="notifyFrameDidLoad(this)"></iframe>
<p>PASS did not cause assertion failure.</p>
</body>
</html>
