chromium/third_party/blink/web_tests/fast/events/mouseover-button.html

<html>
    <head>
        <script src="../../resources/js-test.js"></script>
    </head>

<body>
<p>Test for bugs 
<a href="http://code.google.com/p/chromium/issues/detail?id=87473">cr 87473</a>, <a href="https://bugs.webkit.org/show_bug.cgi?id=64882">64882</a>.

<p id="description"></p>
<iframe style='height: 50; width: 50; top:100;left:100; position:absolute; border-width:0' src='resources/mouseover-button-iframe.html'
    ></iframe>
<div id="console"></div>

<script>

document.events = {};
document.saveWhere = null;

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

        eventSender.mouseMoveTo(1,1);
        eventSender.mouseDown();
        eventSender.mouseUp();

        state('A-no-press');
        
        eventSender.mouseMoveTo(125, 125);

        state('B-left');
        eventSender.mouseDown(0);
        eventSender.mouseMoveTo(300, 300);

        eventSender.mouseMoveTo(125, 125);

        eventSender.mouseMoveTo(1, 1);
        eventSender.mouseUp();

        state('C-no-press');
        eventSender.mouseMoveTo(125, 125);

        state('D-middle');
        eventSender.mouseDown(1);
        eventSender.mouseMoveTo(300, 300);
        eventSender.mouseMoveTo(125, 125);

        eventSender.mouseUp(1);

        eventSender.mouseMoveTo(1, 1);

        window.setTimeout('finish()', 0);
    }
}

function state(name)
{
    document.saveWhere = name;
    document.events[name] = null;
}

function finish()
{
    shouldBe("document.events['A-no-press'].which", "0");
    shouldBe("document.events['B-left'].which", "1");
    shouldBe("document.events['C-no-press'].which", "0");
    shouldBe("document.events['D-middle'].which", "2");

    testRunner.notifyDone()
}

description("This test verifies that we get the correct button on mouseover events in .which when entering a document.");

window.onload = function()
{
    recentEvent = null;
    runTest();
}

</script>

</body>
</html>