<!DOCTYPE html>
<html><head>
	<title>scheduler: external script created with createContextualFragment</title>
	<script src="/resources/testharness.js"></script>
	<script src="/resources/testharnessreport.js"></script>
	<script src="testlib/testlib.js"></script>
</head>
        <div id="log"></div>
	<script>
                log('inline script #1');
                var t = async_test();
	        
                t.step(function() {
                  var range = document.createRange();
                  var fragment = range.createContextualFragment("<script src='scripts/include-1.js'><\/script>");
                  document.body.appendChild(fragment.firstChild);
                });
                  
                addEventListener("load", t.step_func(function() {
			assert_array_equals(eventOrder, ['inline script #1', 'end inline script #1', 'external script #1']);
			t.done();
	        }), false);

                log('end inline script #1');
	</script>

