OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <title>innerHTML in HTML</title> | 2 <title>innerHTML in HTML</title> |
3 <script src="/resources/testharness.js"></script> | 3 <script src="/resources/testharness.js"></script> |
4 <script src="/resources/testharnessreport.js"></script> | 4 <script src="/resources/testharnessreport.js"></script> |
5 <div id="log"></div> | 5 <div id="log"></div> |
6 | 6 |
7 <!-- test elments. Each has an expected innerHTML and outerHTML in an array in t
he <script>--> | 7 <!-- test elments. Each has an expected innerHTML and outerHTML in an array in t
he <script>--> |
8 <div id="test" style="display:none"> | 8 <div id="test" style="display:none"> |
9 <span></span> | 9 <span></span> |
10 <span><a></a></span> | 10 <span><a></a></span> |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 | 138 |
139 var text_elements = ["pre", "textarea", "listing"]; | 139 var text_elements = ["pre", "textarea", "listing"]; |
140 | 140 |
141 var text_tests = [ | 141 var text_tests = [ |
142 ["<%text> context starting with U+000A", | 142 ["<%text> context starting with U+000A", |
143 function(elem) { | 143 function(elem) { |
144 elem.appendChild(document.createTextNode("\x0A")); | 144 elem.appendChild(document.createTextNode("\x0A")); |
145 return elem; | 145 return elem; |
146 }, | 146 }, |
147 "\x0A", | 147 "\x0A", |
148 "<%text>\x0A\x0A</%text>"], | 148 "<%text>\x0A</%text>"], |
149 | 149 |
150 ["<%text> context not starting with U+000A", | 150 ["<%text> context not starting with U+000A", |
151 function(elem) { | 151 function(elem) { |
152 elem.appendChild(document.createTextNode("a\x0A")); | 152 elem.appendChild(document.createTextNode("a\x0A")); |
153 return elem; | 153 return elem; |
154 }, | 154 }, |
155 "a\x0A", | 155 "a\x0A", |
156 "<%text>a\x0A</%text>"], | 156 "<%text>a\x0A</%text>"], |
157 | 157 |
158 ["<%text> non-context starting with U+000A", | 158 ["<%text> non-context starting with U+000A", |
159 function(elem) { | 159 function(elem) { |
160 var span = document.createElement("span"); | 160 var span = document.createElement("span"); |
161 elem.appendChild(document.createTextNode("\x0A")); | 161 elem.appendChild(document.createTextNode("\x0A")); |
162 span.appendChild(elem); | 162 span.appendChild(elem); |
163 return span; | 163 return span; |
164 }, | 164 }, |
165 "<%text>\x0A\x0A</%text>", | 165 "<%text>\x0A</%text>", |
166 "<span><%text>\x0A\x0A</%text></span>"], | 166 "<span><%text>\x0A</%text></span>"], |
167 | 167 |
168 ["<%text> non-context not starting with U+000A", | 168 ["<%text> non-context not starting with U+000A", |
169 function(elem) { | 169 function(elem) { |
170 var span = document.createElement("span"); | 170 var span = document.createElement("span"); |
171 elem.appendChild(document.createTextNode("a\x0A")); | 171 elem.appendChild(document.createTextNode("a\x0A")); |
172 span.appendChild(elem); | 172 span.appendChild(elem); |
173 return span; | 173 return span; |
174 }, | 174 }, |
175 "<%text>a\x0A</%text>", | 175 "<%text>a\x0A</%text>", |
176 "<span><%text>a\x0A</%text></span>"], | 176 "<span><%text>a\x0A</%text></span>"], |
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
285 dom_tests.map(function(item) { | 285 dom_tests.map(function(item) { |
286 return ["outerHTML " + item[0], | 286 return ["outerHTML " + item[0], |
287 item[1], | 287 item[1], |
288 null, | 288 null, |
289 item[3]]; | 289 item[3]]; |
290 })) | 290 })) |
291 | 291 |
292 generate_tests(innerHTML_test, | 292 generate_tests(innerHTML_test, |
293 cross_map(text_tests, text_elements, | 293 cross_map(text_tests, text_elements, |
294 function(test_data, elem_name) { | 294 function(test_data, elem_name) { |
295 var rv = ["innerHTML " + test_data[0].replace("%tex
t", elem_name, "g"), | 295 var rv = ["innerHTML " + test_data[0].replace(/%tex
t/g, elem_name), |
296 test_data[1], | 296 test_data[1], |
297 document.createElement(elem_name), | 297 document.createElement(elem_name), |
298 test_data[2].replace("%text", elem_name,
"g")]; | 298 test_data[2].replace(/%text/g, elem_name)
]; |
299 return rv; | 299 return rv; |
300 })) | 300 })) |
301 | 301 |
302 generate_tests(outerHTML_test, | 302 generate_tests(outerHTML_test, |
303 cross_map(text_tests, text_elements, | 303 cross_map(text_tests, text_elements, |
304 function(test_data, elem_name) { | 304 function(test_data, elem_name) { |
305 var rv = ["outerHTML " + test_data[0].replace("%tex
t", elem_name, "g"), | 305 var rv = ["outerHTML " + test_data[0].replace(/%tex
t/g, elem_name), |
306 test_data[1], | 306 test_data[1], |
307 document.createElement(elem_name), | 307 document.createElement(elem_name), |
308 test_data[3].replace("%text", elem_name,
"g")]; | 308 test_data[3].replace(/%text/g, elem_name)
]; |
309 return rv; | 309 return rv; |
310 })) | 310 })) |
311 | 311 |
312 generate_tests(innerHTML_test, | 312 generate_tests(innerHTML_test, |
313 cross_map(void_tests, void_elements, | 313 cross_map(void_tests, void_elements, |
314 function(test_data, elem_name) { | 314 function(test_data, elem_name) { |
315 var rv = ["innerHTML " + test_data[0] + " " + elem_
name, | 315 var rv = ["innerHTML " + test_data[0] + " " + elem_
name, |
316 test_data[1], | 316 test_data[1], |
317 make_void(elem_name), | 317 make_void(elem_name), |
318 test_data[2].replace("%void", elem_name,
"g")]; | 318 test_data[2].replace(/%void/g, elem_name)
]; |
319 return rv; | 319 return rv; |
320 })) | 320 })) |
321 | 321 |
322 generate_tests(outerHTML_test, | 322 generate_tests(outerHTML_test, |
323 cross_map(void_tests, void_elements, | 323 cross_map(void_tests, void_elements, |
324 function(test_data, elem_name) { | 324 function(test_data, elem_name) { |
325 var rv = ["outerHTML " + test_data[0] + " " + elem_
name, | 325 var rv = ["outerHTML " + test_data[0] + " " + elem_
name, |
326 test_data[1], | 326 test_data[1], |
327 make_void(elem_name), | 327 make_void(elem_name), |
328 test_data[3].replace("%void", elem_name,
"g")]; | 328 test_data[3].replace(/%void/g, elem_name)
]; |
329 return rv; | 329 return rv; |
330 })) | 330 })) |
331 | 331 |
332 </script> | 332 </script> |
OLD | NEW |