blob: 7a3f52fee43dc57cf908a7024ee54fdbd9c9da58 [file] [log] [blame]
<!DOCTYPE html>
<html>
<body>
</body>
<script>
function insertHeaderForTest(testContent, expected)
{
document.body.innerHTML = "<div id='testDiv' contentEditable='true'>foofoo</div>";
var targetDiv = document.getElementById("testDiv");
var targetText = targetDiv.firstChild;
window.getSelection().collapse(targetText, 3);
document.execCommand("InsertHTML", false, testContent);
var actual = targetDiv.innerHTML;
if (actual == expected)
return "Success. " + testContent +" was inserted into <div>foo^foo<div> and the result was:" + actual + "\n";
return "Failure. Result was: " + actual + ", should have been: " + expected + "\n";
}
if (window.testRunner)
testRunner.dumpAsText();
// Test 1: Verify that a header at the beginning of inserted content is preserved.
output = "Test 1: Verify that a header at the beginning of inserted content is preserved.\n";
output += insertHeaderForTest("<h1>bar</h1><div>baz</div>", "foo<h1>bar</h1>bazfoo");
output += insertHeaderForTest("<h2>bar</h2><div>baz</div>", "foo<h2>bar</h2>bazfoo");
output += insertHeaderForTest("<h3>bar</h3><div>baz</div>", "foo<h3>bar</h3>bazfoo");
output += insertHeaderForTest("<h4>bar</h4><div>baz</div>", "foo<h4>bar</h4>bazfoo");
output += insertHeaderForTest("<h5>bar</h5><div>baz</div>", "foo<h5>bar</h5>bazfoo");
output += insertHeaderForTest("<h6>bar</h6><div>baz</div>", "foo<h6>bar</h6>bazfoo");
// Test 2: Verify that a header at the end of inserted content is preserved.
output += "Test 2: Verify that a header at the end of inserted content is preserved.\n";
output += insertHeaderForTest("<div>bar</div><h1>baz</h1>", "foobar<h1>baz</h1>foo");
output += insertHeaderForTest("<div>bar</div><h2>baz</h2>", "foobar<h2>baz</h2>foo");
output += insertHeaderForTest("<div>bar</div><h3>baz</h3>", "foobar<h3>baz</h3>foo");
output += insertHeaderForTest("<div>bar</div><h4>baz</h4>", "foobar<h4>baz</h4>foo");
output += insertHeaderForTest("<div>bar</div><h5>baz</h5>", "foobar<h5>baz</h5>foo");
output += insertHeaderForTest("<div>bar</div><h6>baz</h6>", "foobar<h6>baz</h6>foo");
document.body.innerText = output;
</script>
</html>