summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/xhr/cookies.http.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:47:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:47:29 +0000
commit0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d (patch)
treea31f07c9bcca9d56ce61e9a1ffd30ef350d513aa /testing/web-platform/tests/xhr/cookies.http.html
parentInitial commit. (diff)
downloadfirefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.tar.xz
firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.zip
Adding upstream version 115.8.0esr.upstream/115.8.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/xhr/cookies.http.html')
-rw-r--r--testing/web-platform/tests/xhr/cookies.http.html41
1 files changed, 41 insertions, 0 deletions
diff --git a/testing/web-platform/tests/xhr/cookies.http.html b/testing/web-platform/tests/xhr/cookies.http.html
new file mode 100644
index 0000000000..0ab71dd168
--- /dev/null
+++ b/testing/web-platform/tests/xhr/cookies.http.html
@@ -0,0 +1,41 @@
+<!doctype html>
+<meta charset=utf-8>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+<p>Derived from historical testcase for <a href="http://bugs.webkit.org/show_bug.cgi?id=3420">WebKit bug 3420</a>:
+XMLHttpRequest does not handle set-cookie headers.</p>
+
+<script>
+ function clearCookies()
+ {
+ return new Promise(resolve => {
+ var req = new XMLHttpRequest;
+ req.open("POST", "resources/get-set-cookie.py?clear=1");
+ req.onload = () => resolve();
+ req.send("");
+ });
+ }
+ function getAndSetCookies()
+ {
+ return new Promise(resolve => {
+ var req = new XMLHttpRequest;
+ req.open("POST", "resources/get-set-cookie.py");
+ req.onload = () => resolve(req.responseText);
+ req.send("");
+ });
+ }
+
+ promise_test(async function(t) {
+ await clearCookies();
+ var response = await getAndSetCookies();
+ assert_equals(response.match(/.*WK-test=1.*/), null,
+ "The cookie must not be present after clear. clearCookies() failed. Must be a bug in the test!");
+ var response = await getAndSetCookies();
+ assert_equals(response.match(/.*WK-test-secure=1.*/), null,
+ "a secure cookie was sent via HTTP");
+ assert_regexp_match(response, /.*WK-test=1.*/, "an insecure cookie was sent");
+ await clearCookies();
+ }, "Basic non-cross-site cookie handling in XHR");
+</script>
+</html>