<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script>
    
    function reportSuccess() {
        if (document.getElementById("console").firstChild.nodeValue == "FAILURE") {
            document.getElementById("console").firstChild.nodeValue = "PROCESSING...";
            document.getElementById("anIFrame").src = "resources/purple.html";
        } else {
            document.getElementById("console").firstChild.nodeValue = "SUCCESS";
            testRunner.notifyDone();
        }
    }
    
</script>
</head>
<body>
  <script>
    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.waitUntilDone();
    }
  </script>

<p>Test for <a href="https://bugs.webkit.org/show_bug.cgi?id=3400">bug 3400</a>: setting the .src of an iframe to the same value does not reload page.</p>
<p id=console>FAILURE</p>
<iframe style="width:350px;border:dotted green 1px" width="200" height="200" id="anIFrame" onload="javascript:reportSuccess()" src="resources/purple.html"></iframe>
</body>
</html>
