OLD | NEW |
| (Empty) |
1 <!DOCTYPE html> | |
2 <title>Historical DOM features must be removed</title> | |
3 <script src="../../../resources/testharness.js"></script> | |
4 <script src="../../../resources/testharnessreport.js"></script> | |
5 <div id=log></div> | |
6 <script> | |
7 function isInterfaceNuked(name) { | |
8 test(function() { | |
9 assert_equals(window[name], undefined) | |
10 }, "Historical DOM features must be removed: " + name) | |
11 } | |
12 var nukedInterfaces = [ | |
13 "CDATASection", | |
14 "DOMConfiguration", | |
15 "DOMError", | |
16 "DOMErrorHandler", | |
17 "DOMImplementationList", | |
18 "DOMImplementationSource", | |
19 "DOMLocator", | |
20 "DOMObject", | |
21 "DOMSettableTokenList", | |
22 "DOMUserData", | |
23 "Entity", | |
24 "EntityReference", | |
25 "EventException", // DOM Events | |
26 "NameList", | |
27 "Notation", | |
28 "TypeInfo", | |
29 "UserDataHandler", | |
30 "RangeException" // DOM Range | |
31 ] | |
32 nukedInterfaces.forEach(isInterfaceNuked) | |
33 | |
34 function isNukedFromDocument(name) { | |
35 test(function() { | |
36 var doc = document.implementation.createDocument(null,null,null) | |
37 assert_equals(document[name], undefined) | |
38 assert_equals(doc[name], undefined) | |
39 }, "Historical DOM features must be removed: " + name) | |
40 } | |
41 var documentNuked = [ | |
42 "createCDATASection", | |
43 "createEntityReference", | |
44 "xmlEncoding", | |
45 "xmlStandalone", | |
46 "xmlVersion", | |
47 "strictErrorChecking", | |
48 "domConfig", | |
49 "normalizeDocument", | |
50 "renameNode", | |
51 "defaultCharset", | |
52 "height", | |
53 "width" | |
54 ] | |
55 documentNuked.forEach(isNukedFromDocument) | |
56 | |
57 test(function() { | |
58 assert_equals(document.implementation["getFeature"], undefined) | |
59 }, "DOMImplementation.getFeature() must be nuked.") | |
60 | |
61 function isNukedFromElement(name) { | |
62 test(function() { | |
63 var ele = document.createElementNS("test", "test") | |
64 assert_equals(document.body[name], undefined) | |
65 assert_equals(ele[name], undefined) | |
66 }, "Historical DOM features must be removed: " + name) | |
67 } | |
68 var elementNuked = [ | |
69 "schemaTypeInfo", | |
70 "setIdAttribute", | |
71 "setIdAttributeNS", | |
72 "setIdAttributeNode" | |
73 ] | |
74 elementNuked.forEach(isNukedFromElement) | |
75 | |
76 function isNukedFromDoctype(name) { | |
77 test(function() { | |
78 var doctype = document.implementation.createDocumentType("test", "", "") | |
79 assert_equals(doctype[name], undefined) | |
80 }, "DocumentType member must be nuked: " + name) | |
81 } | |
82 var doctypeNuked = [ | |
83 "entities", | |
84 "notations", | |
85 "internalSubset" | |
86 ] | |
87 doctypeNuked.forEach(isNukedFromDoctype) | |
88 | |
89 function isNukedFromText(name) { | |
90 test(function() { | |
91 var text = document.createTextNode("test") | |
92 assert_equals(text[name], undefined) | |
93 }, "Text member must be nuked: " + name) | |
94 } | |
95 var textNuked = [ | |
96 "isElementContentWhitespace", | |
97 "replaceWholeText" | |
98 ] | |
99 textNuked.forEach(isNukedFromText) | |
100 | |
101 function isNukedFromNode(name) { | |
102 test(function() { | |
103 var doc = document.implementation.createDocument(null,null,null) | |
104 var doctype = document.implementation.createDocumentType("test", "", "") | |
105 var text = document.createTextNode("test") | |
106 assert_equals(doc[name], undefined) | |
107 assert_equals(doctype[name], undefined) | |
108 assert_equals(text[name], undefined) | |
109 }, "Node member must be nuked: " + name) | |
110 } | |
111 var nodeNuked = [ | |
112 "hasAttributes", | |
113 "attributes", | |
114 "namespaceURI", | |
115 "prefix", | |
116 "localName", | |
117 "isSupported", | |
118 "getFeature", | |
119 "getUserData", | |
120 "setUserData" | |
121 ] | |
122 nodeNuked.forEach(isNukedFromNode) | |
123 | |
124 function isNukedFromWindow(name) { | |
125 test(function() { | |
126 assert_equals(window[name], undefined) | |
127 }, "Window member must be nuked: " + name) | |
128 } | |
129 var windowNuked = [ | |
130 "attachEvent" | |
131 ] | |
132 windowNuked.forEach(isNukedFromWindow) | |
133 </script> | |
OLD | NEW |