<!DOCTYPE HTML> <html> <!-- https://bugzilla.mozilla.org/show_bug.cgi?id=604532 --> <head> <title>Test for Bug 604532</title> <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <script type="text/javascript" src="/tests/SimpleTest/EventUtils.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> </head> <body> <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=604532">Mozilla Bug 604532</a> <p id="display"></p> <div id="content"> <input> </div> <pre id="test"> <script type="application/javascript"> /** Test for Bug 604532 **/ SimpleTest.waitForExplicitFinish(); SimpleTest.waitForFocus(function() { var i = document.querySelector("input"); i.focus(); i.value = "foo"; synthesizeKey("A", {accelKey: true}); is(i.selectionStart, 0, "Selection should start at 0 before appending"); is(i.selectionEnd, 3, "Selection should end at 3 before appending"); synthesizeKey("VK_RIGHT", {}); synthesizeKey("x", {}); is(i.value, "foox", "The text should be appended correctly"); synthesizeKey("A", {accelKey: true}); is(i.selectionStart, 0, "Selection should start at 0 after appending"); is(i.selectionEnd, 4, "Selection should end at 4 after appending"); SimpleTest.finish(); }); </script> </pre> </body> </html>