summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/xhr/abort-during-loading.window.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/xhr/abort-during-loading.window.js
parentInitial commit. (diff)
downloadfirefox-upstream.tar.xz
firefox-upstream.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/xhr/abort-during-loading.window.js')
-rw-r--r--testing/web-platform/tests/xhr/abort-during-loading.window.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/testing/web-platform/tests/xhr/abort-during-loading.window.js b/testing/web-platform/tests/xhr/abort-during-loading.window.js
new file mode 100644
index 0000000000..6fd217b2c5
--- /dev/null
+++ b/testing/web-platform/tests/xhr/abort-during-loading.window.js
@@ -0,0 +1,41 @@
+// META: title=XMLHttpRequest: abort() during LOADING
+
+ async_test(test => {
+ var client = new XMLHttpRequest(),
+ result = [],
+ expected = [1, 2, 3, 4]
+ client.onreadystatechange = test.step_func(function() {
+ result.push(client.readyState);
+ if (client.readyState === 3) {
+ assert_equals(client.status, 200)
+ assert_equals(client.statusText, "OK")
+ assert_equals(client.responseXML, null)
+ client.abort();
+ assert_equals(client.readyState, 0)
+ assert_equals(client.status, 0)
+ assert_equals(client.statusText, "")
+ assert_equals(client.responseXML, null)
+ assert_equals(client.getAllResponseHeaders(), "")
+ }
+ if (client.readyState === 4) {
+ assert_equals(client.readyState, 4)
+ assert_equals(client.status, 0)
+ assert_equals(client.statusText, "")
+ assert_equals(client.responseXML, null)
+ assert_equals(client.getAllResponseHeaders(), "")
+ }
+ })
+ client.onloadend = test.step_func(function() {
+ assert_equals(client.readyState, 4)
+ assert_equals(client.status, 0)
+ assert_equals(client.statusText, "")
+ assert_equals(client.responseXML, null)
+ assert_equals(client.getAllResponseHeaders(), "")
+ test.step_timeout(function() {
+ assert_array_equals(result, expected)
+ test.done();
+ }, 100); // wait a bit in case XHR timeout causes spurious event
+ })
+ client.open("GET", "resources/well-formed.xml")
+ client.send(null)
+ })