summaryrefslogtreecommitdiffstats
path: root/dom/media/test/crashtests/audioworkletnode-after-unload-1.html
blob: 7da8d1161a2565860ee621768186aa2ee639c630 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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>