Skip to content

Commit

Permalink
Bug 1271119 - Port test_bug490879.xul from chrome to plain; r=masayuki
Browse files Browse the repository at this point in the history
Possible issue: the previous version saved document.popupNode and
restored it after copying the image, and the new version does not
(because I don't know how).  The test seems to pass anyway.

It seems I had to use doCommand instead of execCommand to carry out the
paste, presumably because of permissions differences between plain and
chrome mochitests.

MozReview-Commit-ID: CdPUCmEtgwO
  • Loading branch information
ayg committed Aug 30, 2016
1 parent fb7ca0e commit 8d30148
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 73 deletions.
2 changes: 0 additions & 2 deletions editor/libeditor/tests/chrome.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ skip-if = buildapp == 'b2g' || os == 'android'
support-files = green.png

[test_bug489202.xul]
[test_bug490879.xul]
subsuite = clipboard
[test_bug569988.html]
skip-if = buildapp == 'mulet'
[test_bug599983.xul]
Expand Down
3 changes: 3 additions & 0 deletions editor/libeditor/tests/mochitest.ini
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@ skip-if = toolkit == 'android'
[test_bug484181.html]
skip-if = toolkit == 'android'
[test_bug487524.html]
[test_bug490879.html]
subsuite = clipboard
skip-if = toolkit == 'android' # bug 1299578
[test_bug502673.html]
[test_bug514156.html]
[test_bug520189.html]
Expand Down
45 changes: 45 additions & 0 deletions editor/libeditor/tests/test_bug490879.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<!doctype html>
<title>Mozilla Bug 490879</title>
<link rel=stylesheet href="/tests/SimpleTest/test.css">
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=490879"
target="_blank">Mozilla Bug 490879</a>
<iframe id="i1" width="200" height="100" src="about:blank"></iframe>
<img id="i" src="green.png">
<script>
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();
SpecialPowers.doCommand(window, "cmd_paste");
}

function copyToClipBoard() {
SpecialPowers.setCommandNode(window, document.getElementById("i"));
SpecialPowers.doCommand(window, "cmd_copyImageContents");
}

copyToClipBoard();
pasteInto();
verifyContent();

SimpleTest.finish();
}

SimpleTest.waitForExplicitFinish();
addLoadEvent(runTest);
</script>
71 changes: 0 additions & 71 deletions editor/libeditor/tests/test_bug490879.xul

This file was deleted.

0 comments on commit 8d30148

Please sign in to comment.