diff options
Diffstat (limited to 'browser/components/shell/test/unit')
-rw-r--r-- | browser/components/shell/test/unit/test_macOS_showSecurityPreferences.js | 30 | ||||
-rw-r--r-- | browser/components/shell/test/unit/xpcshell.toml | 6 |
2 files changed, 36 insertions, 0 deletions
diff --git a/browser/components/shell/test/unit/test_macOS_showSecurityPreferences.js b/browser/components/shell/test/unit/test_macOS_showSecurityPreferences.js new file mode 100644 index 0000000000..df3f4a5918 --- /dev/null +++ b/browser/components/shell/test/unit/test_macOS_showSecurityPreferences.js @@ -0,0 +1,30 @@ +/* Any copyright is dedicated to the Public Domain. + * https://creativecommons.org/publicdomain/zero/1.0/ */ + +/** + * Test the macOS ShowSecurityPreferences shell service method. + */ + +function killSystemPreferences() { + let killallFile = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile); + killallFile.initWithPath("/usr/bin/killall"); + let sysPrefsArg = ["System Preferences"]; + let process = Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess); + process.init(killallFile); + process.run(true, sysPrefsArg, 1); + return process.exitValue; +} + +add_setup(async function () { + info("Ensure System Preferences isn't already running"); + killSystemPreferences(); +}); + +add_task(async function test_prefsOpen() { + let shellSvc = Cc["@mozilla.org/browser/shell-service;1"].getService( + Ci.nsIMacShellService + ); + shellSvc.showSecurityPreferences("Privacy_AllFiles"); + + equal(killSystemPreferences(), 0, "Ensure System Preferences was started"); +}); diff --git a/browser/components/shell/test/unit/xpcshell.toml b/browser/components/shell/test/unit/xpcshell.toml new file mode 100644 index 0000000000..200b895ca3 --- /dev/null +++ b/browser/components/shell/test/unit/xpcshell.toml @@ -0,0 +1,6 @@ +[DEFAULT] +skip-if = ["os == 'android'"] # bug 1730213 +firefox-appdir = "browser" + +["test_macOS_showSecurityPreferences.js"] +run-if = ["os == 'mac'"] |