<html>
    <body>
        <div id="test"></div>
        <div id="result"></div> 
        <script>
            if (window.layoutTestController)
            {
                layoutTestController.dumpAsText();
                layoutTestController.waitUntilDone();
            }

            var event = document.createEvent('KeyboardEvent');
            event.initEvent('mousedown', true, true);
            document.getElementById('test').dispatchEvent(event);

            document.getElementById('result').innerHTML = "PASS";
            if (window.layoutTestController)
                layoutTestController.notifyDone();
        </script> 
    </body> 
</html>
