| <!doctype html> |
| <body> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script> |
| async_test((t) => { |
| let onloadIsCalled = false; |
| window.addEventListener('load', () => { |
| onloadIsCalled = true; |
| }, {once: true}); |
| document.addEventListener('readystatechange', t.step_func(() => { |
| if (document.readyState !== 'complete') { |
| return; |
| } |
| const xhr = new XMLHttpRequest(); |
| xhr.open('GET', 'resources/pass.txt', false /* async */); |
| xhr.send(); |
| assert_false(onloadIsCalled); |
| // The load event eventually arrives. |
| window.addEventListener('load', t.step_func_done(() => { |
| }), {once: 'true'}); |
| })); |
| }, 'sync XHR should not fire window.onload synchronously'); |
| </script> |
| </body> |