summaryrefslogtreecommitdiffstats
path: root/dom/media/test/crashtests/audioworkletnode-after-unload-1.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/test/crashtests/audioworkletnode-after-unload-1.html')
-rw-r--r--dom/media/test/crashtests/audioworkletnode-after-unload-1.html27
1 files changed, 27 insertions, 0 deletions
diff --git a/dom/media/test/crashtests/audioworkletnode-after-unload-1.html b/dom/media/test/crashtests/audioworkletnode-after-unload-1.html
new file mode 100644
index 0000000000..7da8d1161a
--- /dev/null
+++ b/dom/media/test/crashtests/audioworkletnode-after-unload-1.html
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<head>
+<title>Test for bug 1634200 and bug 1655544</title>
+<script>
+document.addEventListener('DOMContentLoaded', async () => {
+ const frame = document.createElement('iframe');
+ document.body.appendChild(frame);
+ frame.srcdoc = '<html></html>';
+ await new Promise(resolve => frame.onload = resolve);
+
+ const subwin = frame.contentWindow;
+ const ctx = new subwin.AudioContext();
+ const url = URL.createObjectURL(
+ new Blob([`registerProcessor("noop",
+ class extends AudioWorkletProcessor {})`]),
+ {type: "application/javascript"});
+ await ctx.audioWorklet.addModule(url);
+
+ frame.remove();
+ new subwin.AudioWorkletNode(ctx, 'noop')
+
+ document.documentElement.removeAttribute('class');
+});
+</script>
+</head>
+</html>