summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:34:42 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-15 03:34:42 +0000
commitda4c7e7ed675c3bf405668739c3012d140856109 (patch)
treecdd868dba063fecba609a1d819de271f0d51b23e /toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs
parentAdding upstream version 125.0.3. (diff)
downloadfirefox-da4c7e7ed675c3bf405668739c3012d140856109.tar.xz
firefox-da4c7e7ed675c3bf405668739c3012d140856109.zip
Adding upstream version 126.0.upstream/126.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs')
-rw-r--r--toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs31
1 files changed, 30 insertions, 1 deletions
diff --git a/toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs b/toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs
index f53d32092d..7e4adacd11 100644
--- a/toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs
+++ b/toolkit/mozapps/extensions/internal/AddonTestUtils.sys.mjs
@@ -3,7 +3,7 @@
*/
/* eslint "mozilla/no-aArgs": 1 */
-/* eslint "no-unused-vars": [2, {"args": "none", "varsIgnorePattern": "^(Cc|Ci|Cr|Cu|EXPORTED_SYMBOLS)$"}] */
+/* eslint "no-unused-vars": [2, {"argsIgnorePattern": "^_", "varsIgnorePattern": "^(Cc|Ci|Cr|Cu|EXPORTED_SYMBOLS)$"}] */
/* eslint "semi": [2, "always"] */
/* eslint "valid-jsdoc": [2, {requireReturn: false}] */
@@ -424,6 +424,35 @@ export var AddonTestUtils = {
});
},
+ getXPIExports() {
+ return ChromeUtils.importESModule(
+ "resource://gre/modules/addons/XPIExports.sys.mjs"
+ ).XPIExports;
+ },
+
+ getWeakSignatureInstallPrefName() {
+ return this.getXPIExports().XPIInstall.getWeakSignatureInstallPrefName();
+ },
+
+ setWeakSignatureInstallAllowed(allowed) {
+ const prefName = this.getWeakSignatureInstallPrefName();
+ let cleanupCalled = false;
+ const cleanup = () => {
+ if (cleanupCalled) {
+ return;
+ }
+ this.testScope.info(
+ `=== clear ${prefName} pref value set by this test file ===`
+ );
+ Services.prefs.clearUserPref(prefName);
+ cleanupCalled = true;
+ };
+ this.testScope.registerCleanupFunction(cleanup);
+ this.testScope.info(`=== set ${prefName} pref value to ${allowed} ===`);
+ Services.prefs.setBoolPref(prefName, allowed);
+ return cleanup;
+ },
+
/**
* Iterates over the entries in a given directory.
*