summaryrefslogtreecommitdiffstats
path: root/toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js
parentInitial commit. (diff)
downloadfirefox-2aa4a82499d4becd2284cdb482213d541b8804dd.tar.xz
firefox-2aa4a82499d4becd2284cdb482213d541b8804dd.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js')
-rw-r--r--toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js b/toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js
new file mode 100644
index 0000000000..73b98b68ae
--- /dev/null
+++ b/toolkit/components/extensions/test/mochitest/head_unlimitedStorage.js
@@ -0,0 +1,50 @@
+/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* vim: set sts=2 sw=2 et tw=80: */
+"use strict";
+
+/* exported checkSitePermissions */
+
+const { Services } = SpecialPowers;
+const { NetUtil } = SpecialPowers.Cu.import(
+ "resource://gre/modules/NetUtil.jsm",
+ {}
+);
+
+function checkSitePermissions(uuid, expectedPermAction, assertMessage) {
+ if (!uuid) {
+ throw new Error(
+ "checkSitePermissions should not be called with an undefined uuid"
+ );
+ }
+
+ const baseURI = NetUtil.newURI(`moz-extension://${uuid}/`);
+ const principal = Services.scriptSecurityManager.createContentPrincipal(
+ baseURI,
+ {}
+ );
+
+ const sitePermissions = {
+ webextUnlimitedStorage: Services.perms.testPermissionFromPrincipal(
+ principal,
+ "WebExtensions-unlimitedStorage"
+ ),
+ indexedDB: Services.perms.testPermissionFromPrincipal(
+ principal,
+ "indexedDB"
+ ),
+ persistentStorage: Services.perms.testPermissionFromPrincipal(
+ principal,
+ "persistent-storage"
+ ),
+ };
+
+ for (const [sitePermissionName, actualPermAction] of Object.entries(
+ sitePermissions
+ )) {
+ is(
+ actualPermAction,
+ expectedPermAction,
+ `The extension "${sitePermissionName}" SitePermission ${assertMessage} as expected`
+ );
+ }
+}