summaryrefslogtreecommitdiffstats
path: root/browser/components/sessionstore/test/browser_global_store.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 17:32:43 +0000
commit6bf0a5cb5034a7e684dcc3500e841785237ce2dd (patch)
treea68f146d7fa01f0134297619fbe7e33db084e0aa /browser/components/sessionstore/test/browser_global_store.js
parentInitial commit. (diff)
downloadthunderbird-upstream.tar.xz
thunderbird-upstream.zip
Adding upstream version 1:115.7.0.upstream/1%115.7.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'browser/components/sessionstore/test/browser_global_store.js')
-rw-r--r--browser/components/sessionstore/test/browser_global_store.js53
1 files changed, 53 insertions, 0 deletions
diff --git a/browser/components/sessionstore/test/browser_global_store.js b/browser/components/sessionstore/test/browser_global_store.js
new file mode 100644
index 0000000000..99aa672180
--- /dev/null
+++ b/browser/components/sessionstore/test/browser_global_store.js
@@ -0,0 +1,53 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+// Tests the API for saving global session data.
+add_task(async function () {
+ const key1 = "Unique name 1: " + Date.now();
+ const key2 = "Unique name 2: " + Date.now();
+ const value1 = "Unique value 1: " + Math.random();
+ const value2 = "Unique value 2: " + Math.random();
+
+ let global = {};
+ global[key1] = value1;
+
+ const testState = {
+ windows: [
+ {
+ tabs: [
+ { entries: [{ url: "about:blank", triggeringPrincipal_base64 }] },
+ ],
+ },
+ ],
+ global,
+ };
+
+ function testRestoredState() {
+ is(
+ ss.getCustomGlobalValue(key1),
+ value1,
+ "restored state has global value"
+ );
+ }
+
+ function testGlobalStore() {
+ is(ss.getCustomGlobalValue(key2), "", "global value initially not set");
+
+ ss.setCustomGlobalValue(key2, value1);
+ is(ss.getCustomGlobalValue(key2), value1, "retreived value matches stored");
+
+ ss.setCustomGlobalValue(key2, value2);
+ is(
+ ss.getCustomGlobalValue(key2),
+ value2,
+ "previously stored value was overwritten"
+ );
+
+ ss.deleteCustomGlobalValue(key2);
+ is(ss.getCustomGlobalValue(key2), "", "global value was deleted");
+ }
+
+ await promiseBrowserState(testState);
+ testRestoredState();
+ testGlobalStore();
+});