| <!DOCTYPE html> |
| <html><head> |
| <title> scheduler: multiple DOM added scripts later in document</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="testlib/testlib.js"></script> |
| </head> |
| <body> |
| |
| <div id="log">FAILED (This TC requires JavaScript enabled)</div> |
| |
| <script>log('inline script #1'); |
| testlib.addScript('log(\'body script #1\')', {}, document.getElementsByTagName('body')[0], false); |
| testlib.addScript('', { 'src':'scripts/include-1.js' }, document.getElementsByTagName('body')[0], false); |
| testlib.addScript('log(\'body script #2\')', {}, document.getElementsByTagName('body')[0], false); |
| log('end script #1'); |
| </script> |
| |
| <script type="text/javascript"> |
| log( 'inline script #2' ); |
| var t = async_test() |
| |
| //The order of the external script vs the second inline script is undefined because the added script is async by default |
| //But we expect most UAs to have the second order |
| onload = function() {setTimeout(t.step_func(function() { |
| assert_any(assert_array_equals, eventOrder, [ |
| ['inline script #1', 'body script #1', 'body script #2', 'end script #1', 'external script #1', 'inline script #2'], |
| ['inline script #1', 'body script #1', 'body script #2', 'end script #1', 'inline script #2', 'external script #1']]); |
| t.done(); |
| }), 100);} |
| </script> |
| |
| </body></html> |