<!DOCTYPE html>
<html>
<head>
<script>
if (window.internals)
    window.internals.settings.setDeviceSupportsMouse(false);
else
    alert("This test requires window.internals");

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

function listener() {
    alert("FAIL: Received mousemove event.");
    window.removeEventListener("mousemove", listener, false);
}

window.addEventListener("mousemove", listener, false);

window.addEventListener("scroll", function() {
    window.setTimeout(function() {
        testRunner.notifyDone();
    }, 200);
}, false);

</script>
</head>
<body>
This test passes if it doesn't alert a message containing the word "fail".
<div style="background-color: blue; height: 1000px"></div>
<script>
window.scrollTo(0, 500);
</script>
</body>
</html>
