tenfourfox/editor/libeditor/tests/test_bug490879.xul
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

72 lines
2.1 KiB
XML

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin"
type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
type="text/css"?>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=490879
-->
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
title="Mozilla Bug 490879" onload="runTest();">
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
<body xmlns="http://www.w3.org/1999/xhtml">
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=490879"
target="_blank">Mozilla Bug 490879</a>
<p/>
<iframe id="i1" width="200" height="100" src="about:blank" /><br />
<img id="i" src="green.png" />
<p/>
<pre id="test">
</pre>
</body>
<script class="testbody" type="application/javascript">
<![CDATA[
function runTest() {
function verifyContent() {
const kExpectedImgSpec = "data:image/png;base64,";
var e = document.getElementById('i1');
var doc = e.contentDocument;
is(doc.getElementsByTagName("img")[0].src.substring(0, kExpectedImgSpec.length),
kExpectedImgSpec, "The pasted image is a base64-encoded data: URI");
}
function pasteInto() {
var e = document.getElementById('i1');
var doc = e.contentDocument;
doc.designMode = "on";
doc.defaultView.focus();
var selection = doc.defaultView.getSelection();
selection.removeAllRanges();
selection.selectAllChildren(doc.body);
selection.collapseToEnd();
doc.execCommand("paste", false, null);
}
function copyToClipBoard() {
var tmpNode = document.popupNode;
document.popupNode = document.getElementById("i");
const kCmd = "cmd_copyImageContents";
var controller = top.document.commandDispatcher
.getControllerForCommand(kCmd);
ok((controller && controller.isCommandEnabled(kCmd)), "have copy command");
controller.doCommand(kCmd);
document.popupNode = tmpNode;
}
copyToClipBoard();
pasteInto();
verifyContent();
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
]]>
</script>
</window>