<!DOCTYPE html><!-- webkit-test-runner [ AttachmentElementEnabled=true ] -->
<html>
<body onload="runTest()">
<div>text before <attachment id="attachment"></attachment> text after</div>
<div id="result"></div>
<script>
var file;
if (window.internals)
    file = window.internals.createFile("resources/test-file.txt");

var attachment = document.getElementById('attachment');
attachment.file = file;

window.onload = function () {
    if (!window.eventSender)
        return;
    eventSender.mouseMoveTo(attachment.offsetLeft + 10, attachment.offsetTop + 10);
    eventSender.mouseDown(0);
    eventSender.mouseUp(0);
    var range = window.getSelection().getRangeAt(0);
    document.getElementById("result").innerText = 'Start offset ' + range.startOffset + ' End offset ' + range.endOffset;
}
</script>
</body>
</html>
