mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-08 08:48:39 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
68
toolkit/content/tests/browser/browser_saveImageURL.js
Normal file
68
toolkit/content/tests/browser/browser_saveImageURL.js
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
"use strict";
|
||||
|
||||
const IMAGE_PAGE = "https://example.com/browser/toolkit/content/tests/browser/image_page.html";
|
||||
const PREF_UNSAFE_FORBIDDEN = "dom.ipc.cpows.forbid-unsafe-from-browser";
|
||||
|
||||
MockFilePicker.init(window);
|
||||
MockFilePicker.returnValue = MockFilePicker.returnCancel;
|
||||
|
||||
registerCleanupFunction(function() {
|
||||
MockFilePicker.cleanup();
|
||||
});
|
||||
|
||||
function waitForFilePicker() {
|
||||
return new Promise((resolve) => {
|
||||
MockFilePicker.showCallback = () => {
|
||||
MockFilePicker.showCallback = null;
|
||||
ok(true, "Saw the file picker");
|
||||
resolve();
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Test that saveImageURL works when we pass in the aIsContentWindowPrivate
|
||||
* argument instead of a document. This is the preferred API.
|
||||
*/
|
||||
add_task(function* preferred_API() {
|
||||
yield BrowserTestUtils.withNewTab({
|
||||
gBrowser,
|
||||
url: IMAGE_PAGE,
|
||||
}, function*(browser) {
|
||||
let url = yield ContentTask.spawn(browser, null, function*() {
|
||||
let image = content.document.getElementById("image");
|
||||
return image.href;
|
||||
});
|
||||
|
||||
saveImageURL(url, "image.jpg", null, true, false, null, null, null, null, false);
|
||||
yield waitForFilePicker();
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Test that saveImageURL will still work when passed a document instead
|
||||
* of the aIsContentWindowPrivate argument. This is the deprecated API, and
|
||||
* will not work in apps using remote browsers having PREF_UNSAFE_FORBIDDEN
|
||||
* set to true.
|
||||
*/
|
||||
add_task(function* deprecated_API() {
|
||||
yield BrowserTestUtils.withNewTab({
|
||||
gBrowser,
|
||||
url: IMAGE_PAGE,
|
||||
}, function*(browser) {
|
||||
yield pushPrefs([PREF_UNSAFE_FORBIDDEN, false]);
|
||||
|
||||
let url = yield ContentTask.spawn(browser, null, function*() {
|
||||
let image = content.document.getElementById("image");
|
||||
return image.href;
|
||||
});
|
||||
|
||||
// Now get the document directly from content. If we run this test with
|
||||
// e10s-enabled, this will be a CPOW, which is forbidden. We'll just
|
||||
// pass the XUL document instead to test this interface.
|
||||
let doc = document;
|
||||
|
||||
saveImageURL(url, "image.jpg", null, true, false, null, doc, null, null);
|
||||
yield waitForFilePicker();
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue