tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

test_insertParagraph_in_inline_editing_host.html (2161B)


      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4  <title>Test "insertParagraph" command in inline editing host</title>
      5  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      6  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css">
      7 </head>
      8 <body>
      9 
     10 <span contenteditable>foobar</span>
     11 <hr>
     12 <p><span contenteditable>foobar</span></p>
     13 <hr>
     14 <div><span contenteditable>foobar</span></div>
     15 <hr>
     16 <div contenteditable><p contenteditable="false"><span contenteditable>foobar</span></p></div>
     17 
     18 <p id="display">
     19 </p>
     20 <div id="content" style="display: none">
     21 </div>
     22 
     23 <pre id="test">
     24 </pre>
     25 
     26 <script class="testbody" type="application/javascript">
     27 
     28 SimpleTest.waitForExplicitFinish();
     29 SimpleTest.waitForFocus(() => {
     30  var selection = document.getSelection();
     31  var editors = document.querySelectorAll("span[contenteditable]");
     32 
     33  var editor = editors.item(0);
     34  editor.focus();
     35  selection.collapse(editor.firstChild, 3);
     36  document.execCommand("insertParagraph", false);
     37  is(editor.innerHTML, "foo<br>bar",
     38     "insertParagraph should insert <br> element (inline editing host is in <body>)");
     39 
     40  editor = editors.item(1);
     41  editor.focus();
     42  selection.collapse(editor.firstChild, 3);
     43  document.execCommand("insertParagraph", false);
     44  is(editor.parentNode.innerHTML, "<span contenteditable=\"\">foo<br>bar</span>",
     45     "insertParagraph should insert <br> element (inline editing host is in <p>)");
     46 
     47  editor = editors.item(2);
     48  editor.focus();
     49  selection.collapse(editor.firstChild, 3);
     50  document.execCommand("insertParagraph", false);
     51  is(editor.parentNode.innerHTML, "<span contenteditable=\"\">foo<br>bar</span>",
     52     "insertParagraph should insert <br> element (inline editing host is in <div>)");
     53 
     54  editor = editors.item(3);
     55  editor.focus();
     56  selection.collapse(editor.firstChild, 3);
     57  document.execCommand("insertParagraph", false);
     58  is(editor.parentNode.parentNode.innerHTML, "<p contenteditable=\"false\"><span contenteditable=\"\">foo<br>bar</span></p>",
     59     "insertParagraph should insert <br> element (inline editing host is in <p contenteditable=\"false\"> in <div contenteditable>)");
     60 
     61  SimpleTest.finish();
     62 });
     63 
     64 </script>
     65 </body>
     66 
     67 </html>