Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(276)

Unified Diff: third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html

Issue 2313573002: Custom Elements: add prototype check for "failed" elements (Closed)
Patch Set: template.html clean up Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html
diff --git a/third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html b/third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html
index 2c56c248fad8f9e798da55f3098e4a5101625862..9eee83c5ab115b7d62ad4940cf788a38fd607201 100644
--- a/third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html
+++ b/third_party/WebKit/LayoutTests/custom-elements/spec/state-failed-create.html
@@ -28,6 +28,10 @@ customElements.define('a-a', class extends HTMLElement {
// https://dom.spec.whatwg.org/#concept-element-custom-element-state
// Set to "failed" in step 7 of "create an element for a token"
// https://html.spec.whatwg.org/multipage/syntax.html#create-an-element-for-the-token
+// If this step throws an exception, then report the exception, and let element be
+// instead a new element that implements HTMLUnknownElement, with no attributes,
+// namespace set to given namespace, namespace prefix set to null, custom element state
+// set to "failed", custom element definition set to null, and node document set to document.
// This test loads the template content into iframe.srcdoc because "create an
// element for a token" with synchronous custom elements flag set to true is
@@ -37,6 +41,8 @@ test_with_window(w => {
let logs = w.logs;
assert_equals(logs.length, 1, 'Only constructor should be invoked');
assert_equals(logs[0], 'constructor', 'The 1st action should be constructor');
+ let e = w.document.querySelector('a-a');
+ assert_equals(Object.getPrototypeOf(e), w.HTMLUnknownElement.prototype);
}, undefined, document.getElementById('test-content').innerHTML);
</script>
</body>

Powered by Google App Engine
This is Rietveld 408576698