| <!DOCTYPE html> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="resources/utils.js"></script> |
| |
| <iframe src="resources/frame-with-autofocus-element.html#top"></iframe> |
| |
| <script> |
| 'use strict'; |
| |
| promise_test(async () => { |
| await waitForLoad(window); |
| await waitUntilStableAutofocusState(); |
| assert_equals(document.activeElement, document.querySelector('iframe'), |
| 'Autofocus elements in iframes should be focused.'); |
| |
| let input = document.createElement('input'); |
| input.autofocus = true; |
| document.body.appendChild(input); |
| await waitUntilStableAutofocusState(); |
| assert_not_equals(document.activeElement, input); |
| }, 'Autofocus elements in iframed documents with "top" fragments should work.'); |
| |
| promise_test(async () => { |
| let w = window.open('resources/frame-with-autofocus-element.html#top'); |
| await waitForLoad(w); |
| await waitUntilStableAutofocusState(w); |
| assert_not_equals(w.document.activeElement, w.document.body); |
| w.close(); |
| }, 'Autofocus elements in top-level browsing context\'s documents with "top" fragments should work.'); |
| </script> |