Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / imported / web-platform-tests / custom-elements / registering-custom-elements / definition-construction-algorithm-local-name-lowercased.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>Custom element local name should be converted to lower case if document is an HTML document</title>
5 <meta name="author" title="Sergey G. Grekhov" href="mailto:sgrekhov@unipro.ru">
6 <meta name="assert" content="If DOCUMENT is an HTML document, convert NAME to lowercase">
7 <link rel="help" href="http://www.w3.org/TR/custom-elements/#registering-custom-elements">
8 <script src="../../../../resources/testharness.js"></script>
9 <script src="../../../../resources/testharnessreport.js"></script>
10 <script src="../testcommon.js"></script>
11 <link rel="stylesheet" href="../../../../resources/testharness.css">
12 </head>
13 <body>
14 <div id="log"></div>
15 <script>
16 test(function() {
17     var doc = newHTMLDocument();
18     HTML5_ELEMENTS.forEach(function(tagName) {
19         var obj = doc.createElement(tagName);
20         var name = 'x-a-' + tagName;
21         var proto = Object.create(obj.constructor.prototype);
22         var GeneratedConstructor = doc.registerElement(name, {
23             prototype: proto,
24             extends: tagName.toUpperCase()
25         });
26         var customElement = new GeneratedConstructor();
27
28         assert_equals(customElement.localName, tagName, 'Local name should be lowercased');
29     });
30 }, 'Custom element local name should be lowercased if document is an HTML document');
31 </script>
32 </body>
33 </html>