Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/editor/libeditor/tests/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 2 kB image not shown  

Quelle  test_bug1250010.html   Sprache: HTML

 
 products/Sources/formale Sprachen/C/Firefox/editor/libeditor/tests/test_bug1250010.html


<!DOCTYPE>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=1250010
-->

<head>
  <title>Test for Bug 1250010</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" href="/tests/SimpleTest/test.css">
  <script src="/tests/SimpleTest/EventUtils.js"></script>
</head>
<body>
<div id="display">
</div>

<div id="test1" contenteditable><p><b><font color="red">1234567890</font></b></p></div>
<div id="test2" contenteditable><p><tt>xyz</tt></p><p><tt><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAIAAABvrngfAAAAFklEQVQImWMwjWhCQwxECoW3oCHihAB0LyYv5/oAHwAAAABJRU5ErkJggg=="></tt></p></div>

<pre id="test">
</pre>

<script class="testbody" type="application/javascript">

function getImageDataURI() {
  return document.getElementsByTagName("img")[0].getAttribute("src");
}

/** Test for Bug 1250010 **/
SimpleTest.waitForExplicitFinish();
SimpleTest.waitForFocus(function() {
  // First test: Empty paragraph is split correctly.
  var div = document.getElementById("test1");
  div.focus();
  synthesizeMouseAtCenter(div, {});

  var sel = window.getSelection();
  var selRange = sel.getRangeAt(0);
  is(selRange.endContainer.nodeName, "#text""selection should be at the end of text node");
  is(selRange.endOffset, 10, "offset should be 10");

  synthesizeKey("KEY_Enter");
  synthesizeKey("KEY_Enter");
  sendString("b");
  synthesizeKey("KEY_ArrowUp");
  sendString("a");

  is(div.innerHTML, "

red\">1234567890

"
 +
                    "

red\">a

"
 +
                    "

red\">b

"
,
                    "unexpected HTML");

  // Second test: Since we modified the code path that splits non-text nodes,
  // test that this works, if the split node is not empty.
  div = document.getElementById("test2");
  div.focus();
  synthesizeMouseAtCenter(div, {});

  selRange = sel.getRangeAt(0);
  is(selRange.endContainer.nodeName, "#text""selection should be at the end of text node");
  is(selRange.endOffset, 3, "offset should be 3");

  // Move behind the image and press enter, insert an "A".
  // That should insert a new empty paragraph with the "A" after what we have.
  synthesizeKey("KEY_ArrowRight");
  synthesizeKey("KEY_ArrowRight");
  synthesizeKey("KEY_Enter");
  sendString("A");

  // TODO: The <br> in the new paragraph and the paragraph containing the <img>
  //       should be removed at typing "A" because they are not necessary
  //       anymore to make the paragraphs visible (bug 503838).
  const expectedHTML =
    "

xyz

" + getImageDataURI() + "\">

"
 +
    "

A

"
;
  is(
    div.innerHTML,
    expectedHTML,
    "Pressing Enter after the should create new paragraph and which contain and new text should be inserted in it"
  );

  SimpleTest.finish();
});

</script>
</body>

</html>

Messung V0.5
C=96 H=99 G=97

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.