| <!DOCTYPE html>
| <html>
|   <head>
|     "
"
|     <script>
|       src="../../resources/dump-as-markup.js"
|     "
"
|     <style>
|       "
.editing { 
    border: 2px solid red; 
    padding: 12px; 
    font-size: 24px; 
}
"
|     "
"
|   " 
"
|   <body>
|     "
"
|     <p>
|       "See this bug: "
|       <a>
|         href="rdar://problem/3918712"
|         "<rdar://problem/3918712>"
|       " "Paste as Quotation" in Mail just pastes (<blockquote> tag seems to be lost)."
|     "
"
|     <p>
|       "To manually test, copy everything in the first editable box and paste it in the second box.
You should see "foo" and a new line inside a red box."
|     "
"
|     <div>
|       contenteditable=""
|       id="root"
|       "
"
|       <div>
|         class="editing"
|         id="test"
|         <div>
|           <blockquote>
|             "foo"
|       "
"
|       <div>
|         class="editing"
|         <div>
|           class="editing"
|           id="test"
|           <blockquote>
|             "foo"
|           <div>
|             <#selection-caret>
|             <br>
|       "
"
|     "
"
|     <script>
|       language="JavaScript"
|       src="../editing.js"
|       type="text/JavaScript"
|     "
"
|     <script>
|       "

function editingTest() {
    for (i = 0; i < 4; i++)
        extendSelectionForwardByCharacterCommand();
    copyCommand();
    for (i = 0; i < 2; i++)
        moveSelectionForwardByCharacterCommand();
    pasteCommand();
}

if (window.testRunner)
    runDumpAsTextEditingTest();
"
|     <ol>
|       <li>
|         "execCopyCommand: 
<div id="test" class="editing"><div><blockquote>foo</blockquote></div></div>
<div class="editing"></div>
"
|       <li>
|         "execPasteCommand: 
<div id="test" class="editing"><div><blockquote>foo</blockquote></div></div>
<div class="editing"><div id="test" class="editing"><blockquote>foo</blockquote><div><br></div></div></div>
"
|     "


"
