<html>
<head>
    <script src="resources/cross-frame-access.js"></script>
</head>
<body>
<iframe src="http://localhost:8000/security/resources/cross-frame-iframe-for-get-test.html" style=""></iframe>
<pre id="console"></pre>
<script>

window.targetWindow = frames[0];

window.onload = function()
{
    if (window.testRunner)
        testRunner.dumpAsText();

    log("\n----- tests for getting/setting the frames array access and the properties associated with it -----\n");

    // frames array
    shouldBe("targetWindow.frames.length", 1);
    shouldBeTrue("canGet('targetWindow.frames[0]')");
    shouldBeTrue("canGet('targetWindow[0]')");

    // Work around DRT bug that causes subsequent tests to fail.
    window.stop();
}
</script>
</body>
</html>
