<!DOCTYPE html>
<html><head>
	<title> scheduler: focus and blur events</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>
	<form><input type="button" onclick="log('click event')" onfocus="log('focus event')" onblur="log('blur event')"><input type="button" onfocus="log('focus el 2 event')" onblur="log('blur event')"></form>
	<script>log('inline script #1');
		document.forms[0][0].focus();
		document.forms[0][1].click();
		document.forms[0][1].focus();
		log('end script #1');
	</script>

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

	function test() {
	    assert_array_equals(eventOrder, ['inline script #1', 'focus event', 'blur event', 'focus el 2 event', 'end script #1', 'inline script #2']);
	    t.done();
        }
	onload = t.step_func(function(){setTimeout(t.step_func(test), 200);})
	</script>

</body></html>
