summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html
blob: 2ac3f109c7a85d2b5521218c3fea53372c8cc0b9 (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
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html>
<meta charset="utf-8">
<link rel="author" href="mailto:masonf@chromium.org">
<link rel="help" href="https://crbug.com/1159328">
<meta name="assert" content="The renderer should not crash.">

<div id="host"></div>
<span>This test passes if the renderer does not crash.</span>

<script>
  const root = host.attachShadow({mode:"open"});
  root.innerHTML = `
    <slot id=outer1 name=outer>
      <slot id=inner1 name=inner>Fallback</slot>
    </slot>
  `;
  document.body.offsetTop;
  // The renderer should not crash here:
  root.querySelector("#outer1").remove();

  root.innerHTML = `
    <slot id=outer2>
      <slot id=inner2>Fallback</slot>
    </slot>
  `;
  document.body.offsetTop;
  // The renderer should not crash here:
  root.querySelector("#outer2").remove();

  root.innerHTML = `
    <slot id=outer3>
      <slot id=inner3>
        <slot id=way-inner3>Fallback</slot>
      </slot>
    </slot>
  `;
  document.body.offsetTop;
  // The renderer should not crash here:
  root.querySelector("#outer3").remove();
</script>