47 lines
1.7 KiB
HTML
47 lines
1.7 KiB
HTML
<body contentEditable="true">
|
|
<p>When inserting a new line, we should break out of nested divs.</p>
|
|
<p id="results"><p>
|
|
<div>first<div>second</div><div>third</div></div>
|
|
</body>
|
|
<script src="../editing.js"></script>
|
|
<script>
|
|
if (window.testRunner)
|
|
window.testRunner.dumpAsText();
|
|
if (window.internals)
|
|
internals.settings.setEditingBehavior("mac");
|
|
function fail(msg) {
|
|
document.getElementById("results").innerText = "FAIL";
|
|
throw msg;
|
|
}
|
|
|
|
// Try inserting a new line after the last div.
|
|
var div2 = document.getElementsByTagName("div")[1];
|
|
var div3 = document.getElementsByTagName("div")[2];
|
|
execSetSelectionCommand(div3, 0, div3, 0);
|
|
execMoveSelectionForwardByWordCommand();
|
|
|
|
execTypeCharacterCommand("\n");
|
|
execInsertHTMLCommand("This should be in a single div.");
|
|
|
|
var div4 = document.getElementsByTagName("div")[3];
|
|
if (div4.innerHTML != "This should be in a single div.")
|
|
fail("wrong div4? " + div4.innerHTML);
|
|
if (div4.parentNode.tagName != "BODY")
|
|
fail("div should not be nested: " + div4.parentNode.tagName);
|
|
|
|
// Try inserting a new line after the second div. This should be nested.
|
|
execSetSelectionCommand(div2, 0, div2, 0);
|
|
execMoveSelectionForwardByWordCommand();
|
|
|
|
execTypeCharacterCommand("\n");
|
|
execInsertHTMLCommand("This should be in nested divs.");
|
|
|
|
var nestedDiv = document.getElementsByTagName("div")[2];
|
|
if (nestedDiv.innerHTML != "This should be in nested divs.")
|
|
fail("wrong nestedDiv? " + nestedDiv.innerHTML);
|
|
if (nestedDiv.parentNode.tagName != "DIV")
|
|
fail("div should be nested: " + nestedDiv.parentNode.tagName);
|
|
|
|
document.getElementById("results").innerText = "SUCCESS";
|
|
</script>
|