| <!doctype html> |
| <title>window.length</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id=log></div> |
| <script> |
| var iframe; |
| var subframe; |
| var other_window; |
| test(function() {assert_equals(window.length, 0)}, "No child browsing contexts"); |
| test(function() { |
| iframe = document.createElement("iframe"); |
| assert_equals(window.length, 0) |
| }, "iframe not inserted into the document"); |
| |
| test(function() { |
| document.body.appendChild(iframe); |
| assert_equals(window.length, 1) |
| }, "One iframe inserted into the document"); |
| |
| test(function() { |
| subframe = document.createElement("iframe"); |
| iframe.contentDocument.body.appendChild(subframe); |
| assert_equals(window.length, 1); |
| }, "Child browsing context has a child browsing context"); |
| |
| test(function() { |
| try { |
| assert_equals(iframe.contentWindow.length, 1); |
| } finally { |
| subframe.parentNode.removeChild(subframe); |
| } |
| }, "window.length in child frame"); |
| |
| test(function() { |
| iframe.parentNode.removeChild(iframe); |
| other_window = window.open(); |
| assert_equals(window.length, 0); |
| assert_equals(other_window.length, 0); |
| }, "Opened window") |
| |
| test(function() { |
| other_window.document.body.appendChild(iframe); |
| try { |
| assert_equals(other_window.length, 1); |
| } finally { |
| other_window.close(); |
| } |
| }, "Iframe in opened window") |
| |
| </script> |