<body style="height: 200%">
<div onmouseover="mouseOver(event)" style="margin: 300px 0; width: 100px; height: 100px; background-color: blue;"></div>
<div id="result">Test did not run</div>
<script>
    var passed = false;

    function mouseOver(event)
    {
        passed = true;
    }

    function finish()
    {
        document.getElementById("result").innerText = passed ? "PASS" : "FAIL";
        testRunner.notifyDone();
    }

    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.waitUntilDone();

        // WebKit schedules a fake mouse move event as part of installing the WebView in
        // a window. For the test to be valid, it must begin only after that event
        // gets dispatched.
        setTimeout(function()
        {
            eventSender.mouseMoveTo(50, 100);
            document.body.scrollTop = 250;
            setTimeout(finish, 200);
        }, 200);
    }
</script>
