chromium/third_party/blink/web_tests/fast/forms/onselect-textfield.html

<html>
<head>
<script>
    function log(msg) {
        document.getElementById('res').innerHTML = document.getElementById('res').innerHTML + msg + "<br>";
    }
    
    function test() {
        if (window.testRunner)
            testRunner.dumpAsText();
        var tf = document.getElementById('tf');
      
        log('Calling focus on text field');
        tf.focus();
        log('After focus: text field selection start: ' + tf.selectionStart + ' end: ' + tf.selectionEnd + '<br>');

        log('Calling setSelectionRange on text field');
        tf.setSelectionRange(3, 5);
        log('After setSelectionRange(3, 5): text field selection start: ' + tf.selectionStart + ' end: ' + tf.selectionEnd + '<br>');

        log('Double clicking to make selection for text field');
        if (window.eventSender) {
            eventSender.mouseMoveTo(60, 55);
            eventSender.mouseDown();
            eventSender.mouseUp();
            eventSender.mouseDown();
            eventSender.mouseUp();
        }
        log('After double clicking: text field selection start: ' + tf.selectionStart + ' end: ' + tf.selectionEnd + '<br>');

        log('Calling blur on text field');
        tf.blur();
        log('After blur: text field selection start: ' + tf.selectionStart + ' end: ' + tf.selectionEnd + '<br>');

        log('Calling focus on text field');
        tf.focus();
        log('After focus: text field selection start: ' + tf.selectionStart + ' end: ' + tf.selectionEnd);
    }
</script>
</head>
<body onload="test()"><br>
This tests onSelect for text fields.  <br><br>
<input type="text" id="tf" onselect="log('onselect fired for text field');" style="position: absolute; top: 50; left: 10;" value="input text"></input>
<div id="res" style="position: absolute; top: 100; left: 10;"></div>
</body>
</html>