1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
4 <script src="../../fast/js/resources/js-test-pre.js"></script>
7 Test HTMLUnknownElement
9 This test verifies the following:
11 <li>The <code><a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#htmlunknownelement">HTMLUnknownElement</a></code>
12 interface is used for HTML elements that are not defined by the HTML5
13 specification (or other applicable specifications).
14 <li>The <code><a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#htmlunknownelement">HTMLUnknownElement</a></code>
15 interface is <b>not</b> used for HTML elements that <b>are</b> defined
16 by the HTML5 specification (or other applicable specifications).
20 <div id="console"></div>
31 // These tags are required by the HTML spec
32 var validTags = ["div", "font", "h1", "table"];
34 // These tags are manufactured and should not be recognized by any browser
35 var bogusTags = ["foo1", "foo2"];
37 var allTags = validTags.concat(bogusTags);
39 function isBogusTag (tag) {
40 for (var k in bogusTags) {
41 var bogusTag = bogusTags[k];
42 if (tag == bogusTag) {
49 var DynamicElements = new Array();
51 for (var k in allTags) {
53 DynamicElements[tag] = document.createElement(tag);
56 for (var element in DynamicElements) {
57 shouldBeTrue("DynamicElements[\"" + element + "\"]" + " instanceof HTMLElement");
58 if (isBogusTag(element)) {
59 shouldBeTrue("DynamicElements[\"" + element + "\"]" + " instanceof HTMLUnknownElement");
61 shouldBeFalse("DynamicElements[\"" + element + "\"]" + " instanceof HTMLUnknownElement");
65 var staticElements = new Array();
67 for (var k in allTags) {
69 staticElements[tag] = document.getElementsByTagName(tag)[0];
72 for (var staticElement in staticElements) {
73 if (staticElements[staticElement]) {
74 if (isBogusTag(staticElement)) {
75 shouldBeTrue("staticElements[\"" + staticElement + "\"]" + " instanceof HTMLUnknownElement");
77 shouldBeFalse("staticElements[\"" + staticElement + "\"]" + " instanceof HTMLUnknownElement");
82 <script src="../../fast/js/resources/js-test-post.js"></script>