diff options
Diffstat (limited to 'dom/base/test/test_bug890580.html')
-rw-r--r-- | dom/base/test/test_bug890580.html | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/dom/base/test/test_bug890580.html b/dom/base/test/test_bug890580.html new file mode 100644 index 0000000000..808a4a868e --- /dev/null +++ b/dom/base/test/test_bug890580.html @@ -0,0 +1,58 @@ +<!DOCTYPE HTML> +<html> +<!-- +https://bugzilla.mozilla.org/show_bug.cgi?id=890580 +--> +<head> + <meta charset="utf-8"> + <title>Test for Bug 883129</title> + <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> + <script type="application/javascript"> + function testPaintextSerializerWithPlaceHolder() { + const de = SpecialPowers.Ci.nsIDocumentEncoder; + const Cc = SpecialPowers.Cc; + + // Create a plaintext encoder with the flag OutputNonTextContentAsPlaceholder. + var encoder = Cc["@mozilla.org/layout/documentEncoder;1?type=text/plain"] + .createInstance(de); + var flags = de.OutputRaw | + de.OutputNonTextContentAsPlaceholder; + encoder.init(document, "text/plain", flags); + + function toPlaintext(id) { + var element = document.getElementById(id); + var range = document.createRange(); + range.selectNodeContents(element); + encoder.setRange(range); + return encoder.encodeToString(); + } + + // The follows are test cases. + is(toPlaintext("case1"), "This is a button. Hello!", "test with <button>"); + is(toPlaintext("case2"), "There is an\uFFFCimage.", "test with <img>"); + is(toPlaintext("case3"), "\uFFFC with text.", "test with <input>"); + is(toPlaintext("case4"), "There is an\uFFFCimage and a \uFFFC.", + "test with <img> and <input>"); + + SimpleTest.finish(); + } + + addLoadEvent(testPaintextSerializerWithPlaceHolder); + SimpleTest.waitForExplicitFinish(); + </script> +</head> +<body> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=890580">Mozilla Bug 890580</a> +<p id="display"></p> +<div id="content" style="display: none"> + <span id="case1"><button id="b">This is a button.</button> Hello!</span> + <span id="case2">There is an<img>image.</span> + <span id="case3"><input type="button" value="Input button"> with text.</span> + <span id="case4" contenteditable="true">There is an<img>image and + a <input type="button" value="button">.</span> +</div> +<pre id="test"> +</pre> +</body> +</html> |