summaryrefslogtreecommitdiffstats
path: root/dom/manifest/test/browser_ManifestObtainer_credentials.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/manifest/test/browser_ManifestObtainer_credentials.js')
-rw-r--r--dom/manifest/test/browser_ManifestObtainer_credentials.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/dom/manifest/test/browser_ManifestObtainer_credentials.js b/dom/manifest/test/browser_ManifestObtainer_credentials.js
new file mode 100644
index 0000000000..826ec24fc0
--- /dev/null
+++ b/dom/manifest/test/browser_ManifestObtainer_credentials.js
@@ -0,0 +1,45 @@
+"use strict";
+
+Services.prefs.setBoolPref("dom.manifest.enabled", true);
+
+const { ManifestObtainer } = ChromeUtils.importESModule(
+ "resource://gre/modules/ManifestObtainer.sys.mjs"
+);
+
+// Don't send cookies
+add_task(async function () {
+ const testPath = "/browser/dom/manifest/test/cookie_setter.html";
+ const tabURL = `https://example.com${testPath}`;
+ const browser = BrowserTestUtils.addTab(gBrowser, tabURL).linkedBrowser;
+ await BrowserTestUtils.browserLoaded(browser);
+ const { short_name } = await ManifestObtainer.browserObtainManifest(browser);
+ is(short_name, "no cookie");
+ const tab = gBrowser.getTabForBrowser(browser);
+ gBrowser.removeTab(tab);
+});
+
+// Send cookies
+add_task(async function () {
+ const testPath =
+ "/browser/dom/manifest/test/cookie_setter_with_credentials.html";
+ const tabURL = `https://example.com${testPath}`;
+ const browser = BrowserTestUtils.addTab(gBrowser, tabURL).linkedBrowser;
+ await BrowserTestUtils.browserLoaded(browser);
+ const { short_name } = await ManifestObtainer.browserObtainManifest(browser);
+ is(short_name, "🍪");
+ const tab = gBrowser.getTabForBrowser(browser);
+ gBrowser.removeTab(tab);
+});
+
+// Cross origin - we go from example.com to example.org
+add_task(async function () {
+ const testPath =
+ "/browser/dom/manifest/test/cookie_setter_with_credentials_cross_origin.html";
+ const tabURL = `https://example.com${testPath}`;
+ const browser = BrowserTestUtils.addTab(gBrowser, tabURL).linkedBrowser;
+ await BrowserTestUtils.browserLoaded(browser);
+ const { short_name } = await ManifestObtainer.browserObtainManifest(browser);
+ is(short_name, "no cookie");
+ const tab = gBrowser.getTabForBrowser(browser);
+ gBrowser.removeTab(tab);
+});