summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/fetch/api/crashtests
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/fetch/api/crashtests')
-rw-r--r--testing/web-platform/tests/fetch/api/crashtests/aborted-fetch-response.https.html11
-rw-r--r--testing/web-platform/tests/fetch/api/crashtests/body-window-destroy.html11
-rw-r--r--testing/web-platform/tests/fetch/api/crashtests/request.html8
3 files changed, 30 insertions, 0 deletions
diff --git a/testing/web-platform/tests/fetch/api/crashtests/aborted-fetch-response.https.html b/testing/web-platform/tests/fetch/api/crashtests/aborted-fetch-response.https.html
new file mode 100644
index 0000000000..fa1ad1717f
--- /dev/null
+++ b/testing/web-platform/tests/fetch/api/crashtests/aborted-fetch-response.https.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<script type="module">
+ const abort = new AbortController();
+ const resp = await fetch("5401a7dfd80adbd578b3e91b86fdc6966a752de7.vtt", {
+ signal: abort.signal,
+ });
+ abort.abort();
+ await resp.body.closed;
+ const cache = await caches.open("cache_name_0");
+ await cache.put("bb4ea079adb4fe423f1d6cec18bc1caf78ac4cd6.ico", resp);
+</script>
diff --git a/testing/web-platform/tests/fetch/api/crashtests/body-window-destroy.html b/testing/web-platform/tests/fetch/api/crashtests/body-window-destroy.html
new file mode 100644
index 0000000000..646d3c5f8c
--- /dev/null
+++ b/testing/web-platform/tests/fetch/api/crashtests/body-window-destroy.html
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<iframe srcdoc='
+ <script>
+ let a = new Blob(["a", "𢕾"], {})
+ let b = new Response(a)
+ try { let _ = b.body } catch (e) { }
+ frameElement.remove()
+ b.json().catch(() => {})
+ </script>
+'></iframe>
diff --git a/testing/web-platform/tests/fetch/api/crashtests/request.html b/testing/web-platform/tests/fetch/api/crashtests/request.html
new file mode 100644
index 0000000000..2d21930c3b
--- /dev/null
+++ b/testing/web-platform/tests/fetch/api/crashtests/request.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<script src="/common/utils.js"></script>
+<script>
+ // Cycle collection test for a case where the Request object is alive and accessible globally.
+ var req = new Request(`/`);
+ fetch(req)
+</script>