<html>
    <script>
        function runTest() 
        {
            if (window.testRunner)
                testRunner.dumpAsText();

            window.getSelection().setBaseAndExtent(start, 0, start, 0);
            document.execCommand("Indent");
            document.getElementById("result").innerHTML = "PASS";
        }
    </script>
    <body onLoad="runTest();">
        <p id="result"></p>
        <div contenteditable="true" id="start" style="text-decoration: none;">
            <hr style="text-align: right;"/>
        </div>
    </body>
</html>

