<html contenteditable="true">
<script>
if (window.layoutTestController)
     layoutTestController.dumpEditingCallbacks();
</script>

<script>
function runTest() {
    var s = window.getSelection();
    var e = document.getElementById("test");
    
    s.setPosition(e, 0);
    document.execCommand("InsertText", false, "This tests to make sure that when the enclosing block is the body element, and when the html element is editable,  inserting a paragraph separator doesn't split the body (inserting a paragraph separator usually splits/clones the enclosing block flow element).");
    s.setPosition(e, 0);
    s.modify("move", "forward", "line");
    s.modify("move", "forward", "line");
    s.modify("move", "forward", "line");
    document.execCommand("InsertParagraph"); 
}
</script>
<body id="test" onLoad="runTest();"></body>
</html>