chromium/third_party/blink/web_tests/editing/selection/context-menu-text-selection.html

<body onload="load()">
<p>This test checks that triggering the context menu selects/doesn't select as platform-appropriate.</p>
<div id="text">Lorem ipsum</div>
<div id="resultmac">RUNNING</div>
<div id="resultwin">RUNNING</div>
<div id="resultunix">RUNNING</div>
<div id="resultandroid">RUNNING</div>
</body>
<script>
function test(platform, selectionExpected, result)
{
    // clear selection
    window.getSelection().removeAllRanges();

    internals.settings.setEditingBehavior(platform);

    var text = document.getElementById("text");

    var x = text.offsetParent.offsetLeft + text.offsetLeft + 4;
    var y = text.offsetParent.offsetTop + text.offsetTop + text.offsetHeight / 2;

    eventSender.mouseMoveTo(x, y);
    eventSender.contextClick();
    // esc key to kill the context menu
    eventSender.keyDown("Escape", null);

    var resultElement = document.getElementById(result);
    var selectionType = window.getSelection().type;
    if (selectionExpected) {
        if (selectionType == "Range")
            resultElement.innerHTML = "SUCCESS";
        else
            resultElement.innerHTML = "FAILURE: There should be a selection.";
    } else {
        if (selectionType == "Range")
            resultElement.innerHTML = "FAILURE: There shouldn't be a selection.";
        else
            resultElement.innerHTML = "SUCCESS";
    }
}

function load()
{
    if (!window.eventSender || !window.testRunner || !window.internals)
        return;

    testRunner.dumpAsText();

    test('mac', true, 'resultmac');
    test('win', false, 'resultwin');
    test('unix', false, 'resultunix');
    test('android', false, 'resultandroid');
}
</script>