diff options
Diffstat (limited to 'testing/web-platform/tests/shadow-dom/imperative-slot-api-crash.html')
-rw-r--r-- | testing/web-platform/tests/shadow-dom/imperative-slot-api-crash.html | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/testing/web-platform/tests/shadow-dom/imperative-slot-api-crash.html b/testing/web-platform/tests/shadow-dom/imperative-slot-api-crash.html new file mode 100644 index 0000000000..b029689211 --- /dev/null +++ b/testing/web-platform/tests/shadow-dom/imperative-slot-api-crash.html @@ -0,0 +1,23 @@ +<!DOCTYPE html> +<link rel="author" href="mailto:masonf@chromium.org"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/scripting.html#dom-slot-assign"> +<link rel="help" href="https://crbug.com/1201402"> + +<div id="host"> + <div id="child1"></div> +</div> +This test passes if it does not crash. +<script> + const host = document.querySelector("#host"); + const child1 = document.querySelector("#child1"); + const shadow_root = host.attachShadow({ mode: "open", slotAssignment: "manual" }); + var slot1 = document.createElement("slot"); + slot1.id = "first_slot"; + shadow_root.appendChild(slot1); + slot1.assign(child1); + slot1.remove(); + slot1 = document.createElement("slot"); + slot1.id = "second_slot"; + shadow_root.appendChild(slot1); + slot1.assign(child1); // Shouldn't crash here +</script> |