<script>
if (window.testRunner)
     testRunner.dumpEditingCallbacks();
</script>
<p>This tests InsertParagraphSeparator inside table cells.  The first cell should contain 'Cell' and a newline, and the second cell should contain 'Two'.</p>

<div contenteditable="true"><table border="1"><tr><td>Cell <span id="start">One</span></td><td><span id="end">Cell</span> Two</td></tr></table></div>

<script>
var start = document.getElementById("start").firstChild;
var end = document.getElementById("end").firstChild;
var s = window.getSelection();

s.setBaseAndExtent(start, 0, end, end.length);
document.execCommand("InsertParagraph");
</script>
