Files
tubestation/browser/components/shell/test/browser_1119088.js
arthur.iakab f36e6bf3d0 Backed out 10 changesets (bug 1485305)for failing browser chrome tests on browser_loadDisallowInherit.js
Backed out changeset 138b8596a9cd (bug 1485305)
Backed out changeset d9f04aeeeef7 (bug 1485305)
Backed out changeset cd063d8afe4e (bug 1485305)
Backed out changeset 2f8a5a03ccb5 (bug 1485305)
Backed out changeset 8085d1eefd7c (bug 1485305)
Backed out changeset 3aaccb374a59 (bug 1485305)
Backed out changeset 3a111e9e5c9c (bug 1485305)
Backed out changeset 61aa1cfb0b01 (bug 1485305)
Backed out changeset bca973d90acc (bug 1485305)
Backed out changeset 4eb33bf25d6f (bug 1485305)
2018-09-18 20:30:07 +03:00

65 lines
2.1 KiB
JavaScript

/* eslint-disable mozilla/no-arbitrary-setTimeout */
let NS_OSX_PICTURE_DOCUMENTS_DIR = "Pct";
let NS_MAC_USER_LIB_DIR = "ULibDir";
function onPageLoad() {
let dirSvc = Cc["@mozilla.org/file/directory_service;1"].
getService(Ci.nsIDirectoryServiceProvider);
let desktopBackgroundDb = dirSvc.getFile(NS_MAC_USER_LIB_DIR, {});
desktopBackgroundDb.append("Application Support");
desktopBackgroundDb.append("Dock");
let desktopBackgroundDbBackup = desktopBackgroundDb.clone();
desktopBackgroundDb.append("desktoppicture.db");
desktopBackgroundDbBackup.append("desktoppicture.db.backup");
ok(desktopBackgroundDb.exists(),
"Desktop background database must exist for test to run.");
if (desktopBackgroundDbBackup.exists()) {
desktopBackgroundDbBackup.remove(false);
}
desktopBackgroundDb.copyTo(null, desktopBackgroundDbBackup.leafName);
let wpFile = dirSvc.getFile(NS_OSX_PICTURE_DOCUMENTS_DIR, {});
wpFile.append("logo.png");
if (wpFile.exists()) {
wpFile.remove(false);
}
let shell = Cc["@mozilla.org/browser/shell-service;1"].
getService(Ci.nsIShellService);
let image = gBrowser.contentDocumentAsCPOW.images[0];
shell.setDesktopBackground(image, 0, "logo.png");
setTimeout(function() {
ok(wpFile.exists(), "Desktop background was written to disk.");
desktopBackgroundDbBackup.moveTo(null, desktopBackgroundDb.leafName);
wpFile.remove(false);
// Restart Dock to reload previous background image.
let killall = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile);
killall.initWithPath("/usr/bin/killall");
let dockArg = ["Dock"];
let process =
Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
process.init(killall);
process.run(true, dockArg, 1);
gBrowser.removeCurrentTab();
finish();
}, 1000);
}
function test() {
gBrowser.selectedTab = BrowserTestUtils.addTab(gBrowser);
BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser).then(onPageLoad, false, "about:logo");
gBrowser.loadURI("about:logo");
waitForExplicitFinish();
}