<!DOCTYPE html>
<html><head>
        <title> scheduler: IFRAMEs added with DOM</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>
        <div></div>
        <script>log('inline script #1');
                for( var i=0; i<2; i++ ){
                        var iframe=document.createElement('iframe');
                        document.getElementsByTagName('div')[1].appendChild(iframe);
                        iframe.src='pages/helloworld.html?'+i+'&'+Math.random();
                }
                log('end script #1');
        </script>

        <script type="text/javascript">
        log( 'inline script #2' );
        var t = async_test()

        function test() {
                assert_any(assert_array_equals, eventOrder, [
                        ['inline script #1', 'end script #1', 'inline script #2', 'frame/popup script 0', 'frame/popup script 1'],
                        ['inline script #1', 'end script #1', 'inline script #2', 'frame/popup script 1', 'frame/popup script 0']]);
                t.done();
        }
        onload = t.step_func(function() {
                setTimeout(t.step_func(test), 200);
        });
        </script>

</body></html>
