getter.html (2223B)
1 <!DOCTYPE html> 2 <title>innerText/outerText getter test</title> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <style> 6 .before::before { content:'abc'; } 7 .table { display:table; } 8 .itable { display:inline-table; } 9 .row { display:table-row; } 10 .cell { display:table-cell; } 11 .first-line-uppercase::first-line { text-transform:uppercase; } 12 .first-letter-uppercase::first-letter { text-transform:uppercase; } 13 .first-letter-float::first-letter { float:left; } 14 </style> 15 <div id="container"></div> 16 <svg id="svgContainer"></svg> 17 <script> 18 let container = document.querySelector('#container'); 19 let svgContainer = document.querySelector('#svgContainer'); 20 function testText(html, expectedPlain, msg) { 21 textTextInContainer(container, html, expectedPlain, msg); 22 } 23 function testTextInSVG(html, expectedPlain, msg) { 24 textTextInContainer(svgContainer, html, expectedPlain, msg); 25 } 26 function textTextInContainer(cont, html, expectedPlain, msg) { 27 test(function() { 28 container.innerHTML = html; 29 if (cont != container) { 30 while (container.firstChild) { 31 cont.appendChild(container.firstChild); 32 } 33 } 34 var e = document.getElementById('target'); 35 if (!e) { 36 e = cont.firstChild; 37 } 38 var pokes = document.getElementsByClassName('poke'); 39 for (var i = 0; i < pokes.length; ++i) { 40 pokes[i].textContent = 'abc'; 41 } 42 ['rp', 'optgroup', 'div'].forEach(function(tag) { 43 pokes = document.getElementsByClassName('poke-' + tag); 44 for (var i = 0; i < pokes.length; ++i) { 45 var el = document.createElement(tag); 46 el.textContent = "abc"; 47 pokes[i].appendChild(el); 48 } 49 }); 50 var shadows = document.getElementsByClassName('shadow'); 51 for (var i = 0; i < shadows.length; ++i) { 52 var s = shadows[i].attachShadow({ mode: "open" }); 53 s.textContent = 'abc'; 54 } 55 while (e && e.nodeType != Node.ELEMENT_NODE) { 56 e = e.nextSibling; 57 } 58 assert_equals(e.innerText, expectedPlain, "innerText"); 59 assert_equals(e.outerText, expectedPlain, "outerText"); 60 cont.textContent = ''; 61 }, msg + ' (' + format_value(html) + ')'); 62 } 63 </script> 64 <script src="getter-tests.js"></script>