<p>
    Test for a bug where an assertion in the RemoveNodeCommand constructor failed
    when deleting a <tt>&lt;br></tt> between a block and a blockquote.
</p>
<p>
    The test has passed if the assertion failure did not occur.
</p>
<div contenteditable style="border: solid red;">
    <div></div><br id="br"><blockquote type="cite">blockquote</blockquote>
</div>
<script>
    if (window.testRunner)
        testRunner.dumpAsText();

    var br = document.getElementById("br");
    var range = document.createRange();

    range.setStartBefore(br);
    range.setEndAfter(br);
    getSelection().addRange(range);
    document.execCommand("Delete", false);
</script>
