| Index: LayoutTests/imported/web-platform-tests/custom-elements/registering-custom-elements/unresolved-elements-interface-html-unknown-element.html
|
| diff --git a/LayoutTests/imported/web-platform-tests/custom-elements/registering-custom-elements/unresolved-elements-interface-html-unknown-element.html b/LayoutTests/imported/web-platform-tests/custom-elements/registering-custom-elements/unresolved-elements-interface-html-unknown-element.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..eccec8c0e895faff6f8435e58657347f2d36beea
|
| --- /dev/null
|
| +++ b/LayoutTests/imported/web-platform-tests/custom-elements/registering-custom-elements/unresolved-elements-interface-html-unknown-element.html
|
| @@ -0,0 +1,54 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<head>
|
| +<title>Unresolved element interface must be HTMLUnknownElement, if the namespace is neither HTML Namespace nor SVG Namespace</title>
|
| +<meta name="author" title="Aleksei Yu. Semenov" href="mailto:a.semenov@unipro.ru">
|
| +<meta name="assert" content="When an unresolved element is created, it's element interface must be HTMLUnknownElement, if the namespace is neither HTML Namespace nor SVG Namespace">
|
| +<link rel="help" href="http://www.w3.org/TR/custom-elements/#registering-custom-elements">
|
| +<script src="../../../../resources/testharness.js"></script>
|
| +<script src="../../../../resources/testharnessreport.js"></script>
|
| +<script src="../testcommon.js"></script>
|
| +<link rel="stylesheet" href="../../../../resources/testharness.css">
|
| +</head>
|
| +<body>
|
| +<div id="log"></div>
|
| +<script>
|
| +var MATHML_NAMESPACE = 'http://www.w3.org/1998/Math/MathML';
|
| +
|
| +test(function() {
|
| + var doc = newHTMLDocument();
|
| + doc.body.innerHTML =
|
| + '<math xmlns="' + MATHML_NAMESPACE + '">' +
|
| + '<x-a id="x-a"></x-a>' +
|
| + '</math>';
|
| + var xa = doc.querySelector('#x-a');
|
| +
|
| + assert_not_equals(xa, null, 'Unregistered custom element should not be null');
|
| +
|
| + // According https://code.google.com/p/chromium/issues/detail?id=336377
|
| + // expected class string is Element
|
| + assert_class_string(xa, 'Element', 'Unresolved custom element must be an Element');
|
| +}, 'Test interface of unresolved element with MathML namespace, created via innerHTML property');
|
| +
|
| +
|
| +test(function() {
|
| + var doc = newHTMLDocument();
|
| + var xa = doc.createElementNS(MATHML_NAMESPACE, 'x-b');
|
| +
|
| + assert_class_string(xa, 'Element',
|
| + 'Unresolved custom element must be a HTMLUnknownElement');
|
| +}, 'Test interface of unresolved element with MathML namespace, ' +
|
| + 'created by Document.createElementNS');
|
| +
|
| +
|
| +testInIFrame('../resources/x-mathml-element.html', function(doc) {
|
| + var customElement = doc.getElementById('x-math-element');
|
| +
|
| + assert_not_equals(customElement, null, 'Unregistered custom element should not be null');
|
| +
|
| + assert_class_string(customElement, 'Element',
|
| + 'Unresolved custom element must be a Element');
|
| +}, 'Test interface of unresolved element in loaded HTML document with embedded MathML elements');
|
| +</script>
|
| +</body>
|
| +</html>
|
|
|