<body>
<style>
input {
    padding-right: 32px;
    padding-top: 32px;
}
</style>
<input onchange="this.type = 'text';" type="range" id="input">
<script src="../../../resources/js-test-pre.js"></script>
<script>
jsTestIsAsync = true;

function keyDownMouseClick(x1, y1, x2, y2) {
    if (!window.eventSender)
        return;
    eventSender.mouseMoveTo(x1, y1);
    eventSender.mouseDown();
    eventSender.mouseMoveTo(x2, y2);
    eventSender.mouseUp();
}

window.onload = function() {
    var input = document.getElementById("input");
    input.focus();
    keyDownMouseClick(input.offsetLeft + input.offsetWidth - 32, input.offsetTop, 0, 0);
    description('Test if drag on a padding area of input[type=range] do not trigger an assertion failure.');
    testPassed('if not crashed.');
    finishJSTest();
};
</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
