<!DOCTYPE html>
<html><head>
	<title> scheduler: DOM added scripts and event handling </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 onload="log('inline #1 load')">
                log('inline script #1');
		testlib.addScript('', {'src':'scripts/include-1.js', 'onload':function(){log("external #1 load")}}, document.getElementsByTagName('head')[0], false);
		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', 'external script #1', 'external #1 load', 'inline script #2'],
                                                             ['inline script #1', 'end script #1', 'inline script #2', 'external script #1', 'external #1 load']
                                                            ]);
		t.done();
}
	onload = function(){setTimeout(t.step_func(test), 100); }
	</script>

</body></html>
