<head>
<script>
function test() {
    if (window.testRunner) {
        testRunner.dumpAsText();
        eventSender.mouseMoveTo(50, 50);
        eventSender.mouseDown();
        eventSender.mouseUp();
    }
}
</script>
</head>
<body onload="test()">
<img id="image" height="100" width="100" src="resources/square-blue-100x100.png" usemap="#map">
<map name="map"><area shape="poly" coords="0,0,0,100,100,100,100,0" href="javascript:void(document.getElementById('result').innerHTML='area clicked')"></map>
<div id="result">no area click seen yet</div>
</body>
