diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:35:49 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-15 03:35:49 +0000 |
commit | d8bbc7858622b6d9c278469aab701ca0b609cddf (patch) | |
tree | eff41dc61d9f714852212739e6b3738b82a2af87 /dom/fetch/tests/browser_default_credentialless_fetch.js | |
parent | Releasing progress-linux version 125.0.3-1~progress7.99u1. (diff) | |
download | firefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.tar.xz firefox-d8bbc7858622b6d9c278469aab701ca0b609cddf.zip |
Merging upstream version 126.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/fetch/tests/browser_default_credentialless_fetch.js')
-rw-r--r-- | dom/fetch/tests/browser_default_credentialless_fetch.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/dom/fetch/tests/browser_default_credentialless_fetch.js b/dom/fetch/tests/browser_default_credentialless_fetch.js new file mode 100644 index 0000000000..1c7e820d5f --- /dev/null +++ b/dom/fetch/tests/browser_default_credentialless_fetch.js @@ -0,0 +1,46 @@ +/* Any copyright is dedicated to the Public Domain. + https://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +const RESOURCE_URL = + getRootDirectory(gTestPath).replace( + "chrome://mochitests/content", + "https://example.com" + ) + "store_header.sjs"; + +add_task(async function test_fetch_defaults_to_credentialless() { + // Ensure cookie is set up: + let expiry = Date.now() / 1000 + 24 * 60 * 60; + Services.cookies.add( + "example.com", + "/", + "foo", + "bar", + false, + false, + false, + expiry, + {}, + Ci.nsICookie.SAMESITE_NONE, + Ci.nsICookie.SCHEME_HTTPS + ); + + // Explicitly send cookie header by using `same-origin` in the init dict, to + // ensure cookies are stored correctly and can be sent. + await fetch(RESOURCE_URL + "?checkheader", { credentials: "same-origin" }); + + Assert.equal( + await fetch(RESOURCE_URL + "?getstate").then(r => r.text()), + "hasCookie", + "Should have cookie when explicitly passing credentials info in 'checkheader' request." + ); + + // Check the default behaviour. + await fetch(RESOURCE_URL + "?checkheader"); + Assert.equal( + await fetch(RESOURCE_URL + "?getstate").then(r => r.text()), + "noCookie", + "Should not have cookie in the default case (no explicit credentials mode) for chrome privileged requests." + ); +}); |