mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-04 23:08:39 +09:00
Bug 1415761 - Catch the exception and rethrow it after invoking custom elements reactions;
The spec was unclear on how CEReactions interact with thrown exceptions; see https://github.com/whatwg/html/issues/3217. The spec is now being clarified in https://github.com/whatwg/html/pull/3235. Tag UXP Issue #1344
This commit is contained in:
parent
3639f0e2bd
commit
5db13d0f4b
6 changed files with 50 additions and 8 deletions
|
|
@ -0,0 +1,31 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Custom Elements: CEReactions interaction with exceptions</title>
|
||||
<link rel="author" title="Domenic Denicola" href="mailto:d@domenic.me">
|
||||
<meta name="help" content="https://html.spec.whatwg.org/multipage/#cereactions">
|
||||
<meta name="help" content="https://github.com/whatwg/html/pull/3235">
|
||||
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="../resources/custom-elements-helpers.js"></script>
|
||||
|
||||
<div id="log"></div>
|
||||
|
||||
<script>
|
||||
"use strict";
|
||||
// Basically from https://github.com/whatwg/html/issues/3217#issuecomment-343633273
|
||||
test_with_window((contentWindow, contentDocument) => {
|
||||
let reactionRan = false;
|
||||
contentWindow.customElements.define("custom-element", class extends contentWindow.HTMLElement {
|
||||
disconnectedCallback() {
|
||||
reactionRan = true;
|
||||
}
|
||||
});
|
||||
const text = contentDocument.createTextNode("");
|
||||
contentDocument.documentElement.appendChild(text);
|
||||
const element = contentDocument.createElement("custom-element");
|
||||
contentDocument.documentElement.appendChild(element);
|
||||
assert_throws("HierarchyRequestError", () => text.before("", contentDocument.documentElement));
|
||||
assert_true(reactionRan);
|
||||
}, "Reaction must run even after the exception is thrown");
|
||||
</script>
|
||||
Loading…
Add table
Add a link
Reference in a new issue