diff options
Diffstat (limited to 'testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html')
-rw-r--r-- | testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html b/testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html new file mode 100644 index 0000000000..2ac3f109c7 --- /dev/null +++ b/testing/web-platform/tests/shadow-dom/nested-slot-remove-crash.html @@ -0,0 +1,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> |