<!DOCTYPE html>
<html><head>
	<title>scheduler: inline 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>log('fragment script #1')<\/script>");
                  document.body.appendChild(fragment.firstChild);
                });
                  
              function test() {
			assert_array_equals(eventOrder, ['inline script #1', 'fragment script #1', 'end inline script #1']);
			t.done();
	        }
		onload = t.step_func(test)
                log('end inline script #1');
	</script>

