Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test innerText getter for <select>, <optgroup> and <option> #4166

Merged
merged 1 commit into from
Nov 3, 2016

Conversation

zcorpan
Copy link
Member

@zcorpan zcorpan commented Nov 3, 2016

Tests for whatwg/html#1717

These all pass in Gecko.

@wpt-stability-bot
Copy link

Firefox

Testing revision 37f69997579d2177a6eed5c659ea61e558063020
Starting 10 test iterations
All results were stable

All results

/innerText/getter.html

Subtest Results
OK
Invisible <p> doesn't induce extra line breaks ("<div style='visibility:hidden'><p><span style='visibility:visible'>abc</span></p>\n<div style='visibility:visible'>def</div>") PASS
display:block <rp> induces line breaks ("<div><rp style='display:block'>abc</rp>def") PASS
<b> gets no special treatment ("<div>123<b>abc</b>def") PASS
::first-line styles applied ("<div class='first-line-uppercase' style='width:0'>abc def") PASS
<select size='2'> contents of target option preserved ("<select size='2'><option id='target'>abc</option><option>def") PASS
Lone <rp> rendered ("<div><rp>abc</rp>") PASS
Newline at block boundary ("<div>123<div>abc</div>def") PASS
display:block <template> contents are not rendered (the contents are in a different document) ("<div><template style='display:block'>abc") PASS
Remove leading/trailing whitespace in opacity:0 container ("<div style='opacity:0'> abc def ") PASS
<textarea> contents ignored ("<div><textarea>abc") PASS
\t preserved ("<pre>abc\tdef") PASS
\n preserved ("<span style='white-space:pre'>abc\ndef") PASS
No removal of leading/trailing whitespace in display:none container ("<div style='display:none'> abc def ") PASS
\n preserved ("<div style='white-space:pre'>abc\ndef") PASS
<select size='1'> contents of target option preserved ("<select size='1'><option id='target'>abc</option><option>def") PASS
Tab-separated table cells in a border-collapse table ("<div><table style='border-collapse:collapse'><tr><td>abc<td>def</table>") PASS
<rp> in a replaced element still renders ("<div><select class='poke-rp'></select>") PASS
display:none container with non-display-none target child ("<div style='display:none'><span id='target'>abc") PASS
No blank lines around <p> preceded by only collapsible whitespace ("<div> <p>abc</p>") PASS
<em> gets no special treatment ("<div>123<em>abc</em>def") PASS
Newline-separated table rows ("<div><div class='table'><span class='row'><span class='cell'>abc</span></span>\n<span class='row'><span class='cell'>def</span></span></div>") PASS
display:block <noscript> is not rendered (it's not parsed!) ("<div><noscript style='display:block'>abc") PASS
Shadow DOM contents ignored ("<div><div class='shadow'>") PASS
Blank line between consecutive <p>s separated only by empty block ("<div><p>abc</p><div></div><p>def") PASS
<select size='1'> contents of options preserved ("<select size='1'><option>abc</option><option>def") PASS
<optgroup> containing <optgroup> ("<select><optgroup class='poke-optgroup'></select>") PASS
soft hyphen preserved ("<div style='width:0'>abc&shy;def") PASS
opacity:0 container ("<div style='opacity:0'>abc") PASS
<audio> contents ok if display:none ("<audio style='display:block'><source id='target' class='poke' style='display:none'>") PASS
<canvas><div id='target'> contents ignored ("<canvas><div id='target'>abc") PASS
overflow:hidden ignored ("<div style='overflow:hidden'>abc") PASS
Trailing whitespace removed ("<div style='white-space:pre-line'>abc ") PASS
No newlines around inline-table ("<div>abc<div class='itable'><span class='cell'>def</span></div>ghi") PASS
::first-letter styles applied ("<div class='first-letter-uppercase' style='width:0'>abc def") PASS
<optgroup> containing <option> ("<select><optgroup><option>abc</select>") PASS
<ol> list items get no special treatment ("<div><ol><li>abc") PASS
\r converted to newline ("<div style='white-space:pre'>abc\rdef") PASS
\t preserved ("<div style='white-space:pre'>abc\tdef") PASS
Newlines around table ("<div>abc<div class='table'><span class='cell'>def</span></div>ghi") PASS
floats induce a block boundary ("<div>abc<div style='float:left'>123</div>def") PASS
<iframe> contents ignored ("<div><iframe>abc") PASS
<option> in <div> ("<div>a<option>123</option>bc") PASS
empty <optgroup> in <select> ("<div>a<select><optgroup></select>bc") PASS
<hr> induces line break ("<div>abc<hr>def") PASS
::first-letter float ignored ("<div class='first-letter-float' style='width:0'>abc def") PASS
No newlines at display:inline-block boundary ("<div>123<span style='display:inline-block'>abc</span>def") PASS
Generated content on child not included ("<div><div class='before'>") PASS
overflow:hidden ignored even with zero height ("<div style='height:0; overflow:hidden'>abc") PASS
<br> induces line break even at end of block ("<div>abc<br>") PASS
<fieldset> <legend> contents preserved ("<div><fieldset><legend>abc") PASS
<fieldset> contents preserved ("<div><fieldset>abc") PASS
visibility:collapse cell ("<table><tr><td style='visibility:collapse'>abc") PASS
<ul> list items get no special treatment ("<div><ul><li>abc") PASS
Internal whitespace preserved ("<span style='white-space:pre'>abc def") PASS
<optgroup> in <div> ("<div>a<optgroup>123</optgroup>bc") PASS
<video> contents ignored ("<div><video>abc") PASS
position:absolute induces a block boundary ("<div>abc<div style='position:absolute'>123</div>def") PASS
Trailing whitespace preserved ("<pre>abc ") PASS
display:contents rendered ("<div>123<span style='display:contents'>abc") PASS
visibility:collapse row ("<table><tr style='visibility:collapse'><td>abc") PASS
Newlines around table ("<div>abc<table><td>def</table>ghi") PASS
\n converted to space ("<div>abc\ndef") PASS
Leading whitespace preserved ("<pre> abc") PASS
No whitespace compression in display:none container ("<div style='display:none'>abc def") PASS
display:none child not rendered ("<div>123<span style='display:none'>abc") PASS
<audio> contents ignored ("<audio style='display:block'>abc") PASS
Consecutive empty blocks ignored ("<div>abc<div></div><div></div>def") PASS
Trailing whitespace before hard line break removed ("<div>abc <br>def") PASS
<audio> contents ignored ("<audio style='display:block'><source id='target' class='poke' style='display:block'>") PASS
CSS 'order' property ignored ("<div style='display:grid'><div style='order:1'>1</div><div>2</div></div>") PASS
Internal whitespace collapsed ("<div style='white-space:pre-line'>abc def") PASS
Tab-separated table cells including trailing empty cells ("<div><table><tr><td>abc<td><td></table>") PASS
<input> contents ignored ("<input type='text' value='abc'>") PASS
tfoot not reordered ("<div><table><tfoot>x</tfoot><tbody>y</tbody></table>") PASS
Blank line between consecutive <p>s separated only by collapsible whitespace ("<div><p>abc</p> <p>def") PASS
Blank line between consecutive <p>s ("<div><p>abc<p>def") PASS
Shadow DOM contents ignored ("<div class='shadow'>") PASS
Leading whitespace preserved ("<span style='white-space:pre'> abc") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span><span></span> def") PASS
Grid items blockified ("<div style='display:grid'><span>1</span><span>2</span></div>") PASS
<img> alt text ignored ("<div><img alt='abc'>") PASS
<rp> rendered ("<div><ruby>abc<rp>(</rp><rt>def</rt><rp>)</rp></ruby>") PASS
Internal whitespace preserved ("<div style='white-space:pre'>abc def") PASS
position:relative has no effect ("<div>abc<span style='position:relative'>123</span>def") PASS
display:block <rp> induces line breaks but doesn't trim whitespace ("<div><rp style='display:block'> abc </rp>def") PASS
<video> contents ok if display:none ("<video style='display:block'><source id='target' class='poke' style='display:none'>") PASS
non-display-none child of svg ("<div id='target'>abc") PASS
<canvas> contents ignored ("<div><canvas>abc") PASS
Empty block induces single line break ("<div>abc<div></div>def") PASS
comment ignored ("<div>abc<!--comment-->def") PASS
<audio> contents ignored ("<div><audio>abc") PASS
Whitespace compression in opacity:0 container ("<div style='opacity:0'>abc def") PASS
display:none child of svg ("<div style='display:none' id='target'>abc") PASS
<hr><hr><hr> induces just one line break ("<div>abc<hr><hr><hr>def") PASS
Soft line breaks ignored ("<div style='width:0'>abc def") PASS
Blank line before <p> ("<div>abc<p>def") PASS
CSS 'order' property ignored ("<div style='display:flex'><div style='order:1'>1</div><div>2</div></div>") PASS
visibility:visible child rendered ("<div style='visibility:hidden'>123<span style='visibility:visible'>abc") PASS
floats induce a block boundary ("<div>abc<span style='float:left'>123</span>def") PASS
innerText not supported on MathML elements ("<math>abc") PASS
display:contents container ("<div style='display:contents'>abc") PASS
Leading whitespace removed ("<div style='white-space:pre-line'> abc") PASS
Blank lines between <p>s separated by non-empty block ("<div><p>abc</p><div>123</div><p>def") PASS
\n preserved ("<div style='white-space:pre-line'>abc\ndef") PASS
text-transform handles es-zet ("<div><div style='text-transform:uppercase'>Maß") PASS
display:block <script> is rendered ("<div><script style='display:block'>abc") PASS
visibility:hidden <rp> not rendered ("<div><rp style='visibility:hidden'>abc</rp>") PASS
<hr> content rendered ("<div><hr class='poke'>") PASS
<video> contents ignored ("<video>abc") PASS
Leading/trailing space removal at display:inline-block boundary ("<div>123<span style='display:inline-block'> abc </span>def") PASS
<tt> gets no special treatment ("<div>123<tt>abc</tt>def") PASS
text-transform handles Turkish casing ("<div><div lang='tr' style='text-transform:uppercase'>i ı") PASS
visibility:collapse honored on flex item ("<div style='display:flex'><span style='visibility:collapse'>1</span><span>2</span></div>") PASS
<img> alt text ignored ("<img alt='abc'>") PASS
Blank line after <p> ("<div><p>abc</p>def") PASS
Internal whitespace preserved ("<pre>abc def") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span><span style='white-space:pre'></span> def") PASS
text-overflow:ellipsis ignored ("<div style='width:0; overflow:hidden; text-overflow:ellipsis'>abc") PASS
\n preserved ("<pre>abc\ndef") PASS
display:block <style> is rendered ("<div><style style='display:block'>abc") PASS
Trailing whitespace preserved ("<span style='white-space:pre'>abc ") PASS
position:absolute induces a block boundary ("<div>abc<span style='position:absolute'>123</span>def") PASS
Blank lines around a <p> in its own block ("<div>abc<div><p>123</p></div>def") PASS
<fieldset> contents preserved ("<fieldset>abc") PASS
text-transform is applied ("<div><div style='text-transform:uppercase'>abc") PASS
position:relative has no effect ("<div>abc<div style='position:relative'>123</div>def") PASS
Flex items blockified ("<div style='display:flex'><span>1</span><span>2</span></div>") PASS
<fieldset> <legend> contents preserved ("<fieldset><legend>abc") PASS
<button> contents preserved ("<button>abc") PASS
\r converted to newline ("<div style='white-space:pre-line'>abc\rdef") PASS
empty <select> ("<div>a<select></select>bc") PASS
<video> contents ignored ("<video style='display:block'><source id='target' class='poke' style='display:block'>") PASS
("<table><tfoot><tr><td>footer</tfoot><thead><tr><td style='visibility:collapse'>thead</thead><tbody><tr><td>tbody</tbody></table>") PASS
Newline-separated table rows ("<div><div class='itable'><span class='row'><span class='cell'>abc</span></span>\n<span class='row'><span class='cell'>def</span></span></div>") PASS
&nbsp; preserved ("<div>&nbsp;") PASS
visibility:collapse row with visible cell ("<table><tr style='visibility:collapse'><td style='visibility:visible'>abc") PASS
empty <optgroup> in <div> ("<div>a<optgroup></optgroup>bc") PASS
<div> in <option> ("<select><option class='poke-div'>123</select>") PASS
visibility:collapse row-group ("<table><tbody style='visibility:collapse'><tr><td>abc") PASS
\t converted to space ("<div style='white-space:pre-line'>abc\tdef") PASS
<select size='1'> contents of options preserved ("<div><select size='1'><option>abc</option><option>def") PASS
soft hyphen preserved ("<div>abc&shy;def") PASS
Lone <rp> rendered without whitespace trimming ("<div><rp> abc </rp>") PASS
visibility:collapse row-group with visible cell ("<table><tbody style='visibility:collapse'><tr><td style='visibility:visible'>abc") PASS
<img> contents ignored ("<img src='about:blank' class='poke'>") PASS
\r converted to space ("<div>abc\rdef") PASS
<iframe> contents ignored ("<iframe>abc") PASS
Tab-separated table cells ("<div><div class='itable'><span class='cell'>abc</span>\n<span class='cell'>def</span></div>") PASS
visibility:hidden child not rendered ("<div>123<span style='visibility:hidden'>abc") PASS
\t converted to space ("<div>abc\tdef") PASS
<br> induces line break ("<div>abc<br>def") PASS
Tab-separated table cells including empty cells ("<div><table><tr><td>abc<td><td>def</table>") PASS
display:contents not processed via textContent ("<div style='display:contents'> ") PASS
innerText not supported on SVG elements ("<svg>abc") PASS
visibility:hidden container ("<div style='visibility:hidden'>abc") PASS
display:contents not processed via textContent ("<div><div style='display:contents'> ") PASS
opacity:0 child rendered ("<div>123<span style='opacity:0'>abc") PASS
Leading whitespace removed ("<div> abc") PASS
<span> boundaries are irrelevant ("<div>123<span>abc</span>def") PASS
display:none container ("<div style='display:none'>abc") PASS
<strong> gets no special treatment ("<div>123<strong>abc</strong>def") PASS
empty <option> in <div> ("<div>a<option></option>bc") PASS
<select size='2'> contents of options preserved ("<div><select size='2'><option>abc</option><option>def") PASS
No blank lines around <div> with margin ("<div>abc<div style='margin:2em'>def") PASS
Newline-separated table rows ("<div><table><tr><td>abc<tr><td>def</table>") PASS
child of display:none child of svg ("<div style='display:none'><div id='target'>abc") PASS
<br> content ignored ("<div><br class='poke'>") PASS
Single newline in two-row inline-table ("<div>abc<div class='itable'><span class='row'><span class='cell'>def</span></span>\n<span class='row'><span class='cell'>123</span></span></div>ghi") PASS
\r converted to newline ("<span style='white-space:pre'>abc\rdef") PASS
<i> gets no special treatment ("<div>123<i>abc</i>def") PASS
No blank lines around <p> alone ("<div><p>abc") PASS
Newline between cells and caption ("<div><table><tr><td>abc<caption>def</caption></table>") PASS
<hr><hr> induces just one line break ("<div>abc<hr><hr>def") PASS
Simplest possible test ("<div>abc") PASS
Trailing whitespace preserved ("<div style='white-space:pre'>abc ") PASS
Trailing whitespace removed ("<div>abc ") PASS
block-in-inline doesn't add unnecessary newlines ("<div>abc<span>123<div>456</div>789</span>def") PASS
\r converted to newline ("<pre>abc\rdef") PASS
<textarea> contents ignored ("<textarea>abc") PASS
<select> containing text node child ("<select class='poke'></select>") PASS
display:contents container ("<div><div style='display:contents'>abc") PASS
<select size='2'> contents of options preserved ("<select size='2'><option>abc</option><option>def") PASS
<span> boundaries are irrelevant ("<div style='width:0'>123 <span>abc</span> def") PASS
<button> contents preserved ("<div><button>abc") PASS
Generated content not included ("<div class='before'>") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span> def") PASS
<iframe> subdocument ignored ("<iframe src='data:text/html,abc'>") PASS
overflow:hidden ignored even with zero width ("<div style='width:0; overflow:hidden'>abc") PASS
<code> gets no special treatment ("<div>123<code>abc</code>def") PASS
Tab-separated table cells ("<div><table><tr><td>abc<td>def</table>") PASS
<span> boundaries are irrelevant ("<div>123 <span>abc</span> def") PASS
<input> contents ignored ("<div><input type='text' value='abc'>") PASS
<iframe> subdocument ignored ("<div><iframe src='data:text/html,abc'>") PASS
No blank lines around <p> followed by only collapsible whitespace ("<div><p>abc</p> ") PASS
visibility:collapse honored on grid item ("<div style='display:grid'><span style='visibility:collapse'>1</span><span>2</span></div>") PASS
Leading whitespace preserved ("<div style='white-space:pre'> abc") PASS
Tab-separated table cells ("<div><div class='table'><span class='cell'>abc</span>\n<span class='cell'>def</span></div>") PASS
<canvas> contents ignored ("<canvas>abc") PASS
Ignoring non-rendered table whitespace ("<div><table style='white-space:pre'> <td>abc</td> </table>") PASS
Newline at display:block boundary ("<div>123<span style='display:block'>abc</span>def") PASS
<iframe> contents ignored ("<iframe><div id='target'>abc") PASS
empty <option> in <select> ("<div>a<select><option></select>bc") PASS
\t preserved ("<span style='white-space:pre'>abc\tdef") PASS
Internal whitespace compressed ("<div>abc def") PASS
One blank line between <p>s, ignoring empty <p>s ("<div><p>abc<p></p><p></p><p>def") PASS

@wpt-stability-bot
Copy link

Chrome

Testing revision 37f69997579d2177a6eed5c659ea61e558063020
Starting 10 test iterations
All results were stable

All results

/innerText/getter.html

Subtest Results
OK
Invisible <p> doesn't induce extra line breaks ("<div style='visibility:hidden'><p><span style='visibility:visible'>abc</span></p>\n<div style='visibility:visible'>def</div>") FAIL
display:block <rp> induces line breaks ("<div><rp style='display:block'>abc</rp>def") PASS
<b> gets no special treatment ("<div>123<b>abc</b>def") PASS
::first-line styles applied ("<div class='first-line-uppercase' style='width:0'>abc def") FAIL
<select size='2'> contents of target option preserved ("<select size='2'><option id='target'>abc</option><option>def") PASS
Lone <rp> rendered ("<div><rp>abc</rp>") PASS
Newline at block boundary ("<div>123<div>abc</div>def") PASS
display:block <template> contents are not rendered (the contents are in a different document) ("<div><template style='display:block'>abc") PASS
Remove leading/trailing whitespace in opacity:0 container ("<div style='opacity:0'> abc def ") PASS
<textarea> contents ignored ("<div><textarea>abc") PASS
\t preserved ("<pre>abc\tdef") PASS
\n preserved ("<span style='white-space:pre'>abc\ndef") PASS
No removal of leading/trailing whitespace in display:none container ("<div style='display:none'> abc def ") PASS
\n preserved ("<div style='white-space:pre'>abc\ndef") PASS
<select size='1'> contents of target option preserved ("<select size='1'><option id='target'>abc</option><option>def") PASS
Tab-separated table cells in a border-collapse table ("<div><table style='border-collapse:collapse'><tr><td>abc<td>def</table>") FAIL
<rp> in a replaced element still renders ("<div><select class='poke-rp'></select>") FAIL
display:none container with non-display-none target child ("<div style='display:none'><span id='target'>abc") PASS
No blank lines around <p> preceded by only collapsible whitespace ("<div> <p>abc</p>") FAIL
<em> gets no special treatment ("<div>123<em>abc</em>def") PASS
Newline-separated table rows ("<div><div class='table'><span class='row'><span class='cell'>abc</span></span>\n<span class='row'><span class='cell'>def</span></span></div>") FAIL
display:block <noscript> is not rendered (it's not parsed!) ("<div><noscript style='display:block'>abc") PASS
Shadow DOM contents ignored ("<div><div class='shadow'>") PASS
Blank line between consecutive <p>s separated only by empty block ("<div><p>abc</p><div></div><p>def") FAIL
<select size='1'> contents of options preserved ("<select size='1'><option>abc</option><option>def") FAIL
<optgroup> containing <optgroup> ("<select><optgroup class='poke-optgroup'></select>") PASS
soft hyphen preserved ("<div style='width:0'>abc&shy;def") PASS
opacity:0 container ("<div style='opacity:0'>abc") PASS
<audio> contents ok if display:none ("<audio style='display:block'><source id='target' class='poke' style='display:none'>") PASS
<canvas><div id='target'> contents ignored ("<canvas><div id='target'>abc") FAIL
overflow:hidden ignored ("<div style='overflow:hidden'>abc") PASS
Trailing whitespace removed ("<div style='white-space:pre-line'>abc ") PASS
No newlines around inline-table ("<div>abc<div class='itable'><span class='cell'>def</span></div>ghi") FAIL
::first-letter styles applied ("<div class='first-letter-uppercase' style='width:0'>abc def") PASS
<optgroup> containing <option> ("<select><optgroup><option>abc</select>") FAIL
<ol> list items get no special treatment ("<div><ol><li>abc") FAIL
\r converted to newline ("<div style='white-space:pre'>abc\rdef") PASS
\t preserved ("<div style='white-space:pre'>abc\tdef") PASS
Newlines around table ("<div>abc<div class='table'><span class='cell'>def</span></div>ghi") PASS
floats induce a block boundary ("<div>abc<div style='float:left'>123</div>def") FAIL
<iframe> contents ignored ("<div><iframe>abc") PASS
<option> in <div> ("<div>a<option>123</option>bc") FAIL
empty <optgroup> in <select> ("<div>a<select><optgroup></select>bc") FAIL
<hr> induces line break ("<div>abc<hr>def") PASS
::first-letter float ignored ("<div class='first-letter-float' style='width:0'>abc def") PASS
No newlines at display:inline-block boundary ("<div>123<span style='display:inline-block'>abc</span>def") PASS
Generated content on child not included ("<div><div class='before'>") PASS
overflow:hidden ignored even with zero height ("<div style='height:0; overflow:hidden'>abc") FAIL
<br> induces line break even at end of block ("<div>abc<br>") PASS
<fieldset> <legend> contents preserved ("<div><fieldset><legend>abc") FAIL
<fieldset> contents preserved ("<div><fieldset>abc") FAIL
visibility:collapse cell ("<table><tr><td style='visibility:collapse'>abc") PASS
<ul> list items get no special treatment ("<div><ul><li>abc") FAIL
Internal whitespace preserved ("<span style='white-space:pre'>abc def") PASS
<optgroup> in <div> ("<div>a<optgroup>123</optgroup>bc") FAIL
<video> contents ignored ("<div><video>abc") PASS
position:absolute induces a block boundary ("<div>abc<div style='position:absolute'>123</div>def") FAIL
Trailing whitespace preserved ("<pre>abc ") PASS
visibility:collapse row ("<table><tr style='visibility:collapse'><td>abc") PASS
Newlines around table ("<div>abc<table><td>def</table>ghi") PASS
\n converted to space ("<div>abc\ndef") PASS
Leading whitespace preserved ("<pre> abc") PASS
No whitespace compression in display:none container ("<div style='display:none'>abc def") PASS
display:none child not rendered ("<div>123<span style='display:none'>abc") PASS
<audio> contents ignored ("<audio style='display:block'>abc") FAIL
Consecutive empty blocks ignored ("<div>abc<div></div><div></div>def") PASS
Trailing whitespace before hard line break removed ("<div>abc <br>def") FAIL
<audio> contents ignored ("<audio style='display:block'><source id='target' class='poke' style='display:block'>") FAIL
Internal whitespace collapsed ("<div style='white-space:pre-line'>abc def") PASS
Tab-separated table cells including trailing empty cells ("<div><table><tr><td>abc<td><td></table>") FAIL
<input> contents ignored ("<input type='text' value='abc'>") PASS
tfoot not reordered ("<div><table><tfoot>x</tfoot><tbody>y</tbody></table>") FAIL
Blank line between consecutive <p>s separated only by collapsible whitespace ("<div><p>abc</p> <p>def") FAIL
Blank line between consecutive <p>s ("<div><p>abc<p>def") FAIL
Shadow DOM contents ignored ("<div class='shadow'>") PASS
Leading whitespace preserved ("<span style='white-space:pre'> abc") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span><span></span> def") PASS
<img> alt text ignored ("<div><img alt='abc'>") PASS
<rp> rendered ("<div><ruby>abc<rp>(</rp><rt>def</rt><rp>)</rp></ruby>") FAIL
Internal whitespace preserved ("<div style='white-space:pre'>abc def") PASS
position:relative has no effect ("<div>abc<span style='position:relative'>123</span>def") PASS
display:block <rp> induces line breaks but doesn't trim whitespace ("<div><rp style='display:block'> abc </rp>def") FAIL
<video> contents ok if display:none ("<video style='display:block'><source id='target' class='poke' style='display:none'>") PASS
non-display-none child of svg ("<div id='target'>abc") FAIL
Empty block induces single line break ("<div>abc<div></div>def") PASS
comment ignored ("<div>abc<!--comment-->def") PASS
<audio> contents ignored ("<div><audio>abc") PASS
Whitespace compression in opacity:0 container ("<div style='opacity:0'>abc def") PASS
display:none child of svg ("<div style='display:none' id='target'>abc") PASS
<hr><hr><hr> induces just one line break ("<div>abc<hr><hr><hr>def") PASS
Soft line breaks ignored ("<div style='width:0'>abc def") PASS
Blank line before <p> ("<div>abc<p>def") FAIL
CSS 'order' property ignored ("<div style='display:flex'><div style='order:1'>1</div><div>2</div></div>") FAIL
visibility:visible child rendered ("<div style='visibility:hidden'>123<span style='visibility:visible'>abc") PASS
floats induce a block boundary ("<div>abc<span style='float:left'>123</span>def") FAIL
innerText not supported on MathML elements ("<math>abc") PASS
Leading whitespace removed ("<div style='white-space:pre-line'> abc") PASS
Blank lines between <p>s separated by non-empty block ("<div><p>abc</p><div>123</div><p>def") FAIL
\n preserved ("<div style='white-space:pre-line'>abc\ndef") PASS
text-transform handles es-zet ("<div><div style='text-transform:uppercase'>Maß") FAIL
display:block <script> is rendered ("<div><script style='display:block'>abc") FAIL
visibility:hidden <rp> not rendered ("<div><rp style='visibility:hidden'>abc</rp>") PASS
<hr> content rendered ("<div><hr class='poke'>") FAIL
<video> contents ignored ("<video>abc") PASS
Leading/trailing space removal at display:inline-block boundary ("<div>123<span style='display:inline-block'> abc </span>def") FAIL
<tt> gets no special treatment ("<div>123<tt>abc</tt>def") PASS
text-transform handles Turkish casing ("<div><div lang='tr' style='text-transform:uppercase'>i ı") FAIL
visibility:collapse honored on flex item ("<div style='display:flex'><span style='visibility:collapse'>1</span><span>2</span></div>") FAIL
<img> alt text ignored ("<img alt='abc'>") PASS
Blank line after <p> ("<div><p>abc</p>def") PASS
Internal whitespace preserved ("<pre>abc def") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span><span style='white-space:pre'></span> def") FAIL
text-overflow:ellipsis ignored ("<div style='width:0; overflow:hidden; text-overflow:ellipsis'>abc") FAIL
\n preserved ("<pre>abc\ndef") PASS
display:block <style> is rendered ("<div><style style='display:block'>abc") FAIL
Trailing whitespace preserved ("<span style='white-space:pre'>abc ") PASS
position:absolute induces a block boundary ("<div>abc<span style='position:absolute'>123</span>def") FAIL
Blank lines around a <p> in its own block ("<div>abc<div><p>123</p></div>def") FAIL
<fieldset> contents preserved ("<fieldset>abc") PASS
text-transform is applied ("<div><div style='text-transform:uppercase'>abc") FAIL
position:relative has no effect ("<div>abc<div style='position:relative'>123</div>def") PASS
Flex items blockified ("<div style='display:flex'><span>1</span><span>2</span></div>") FAIL
<fieldset> <legend> contents preserved ("<fieldset><legend>abc") FAIL
<button> contents preserved ("<button>abc") PASS
\r converted to newline ("<div style='white-space:pre-line'>abc\rdef") PASS
empty <select> ("<div>a<select></select>bc") PASS
<video> contents ignored ("<video style='display:block'><source id='target' class='poke' style='display:block'>") FAIL
("<table><tfoot><tr><td>footer</tfoot><thead><tr><td style='visibility:collapse'>thead</thead><tbody><tr><td>tbody</tbody></table>") FAIL
Newline-separated table rows ("<div><div class='itable'><span class='row'><span class='cell'>abc</span></span>\n<span class='row'><span class='cell'>def</span></span></div>") FAIL
&nbsp; preserved ("<div>&nbsp;") PASS
visibility:collapse row with visible cell ("<table><tr style='visibility:collapse'><td style='visibility:visible'>abc") FAIL
empty <optgroup> in <div> ("<div>a<optgroup></optgroup>bc") FAIL
<div> in <option> ("<select><option class='poke-div'>123</select>") FAIL
visibility:collapse row-group ("<table><tbody style='visibility:collapse'><tr><td>abc") PASS
\t converted to space ("<div style='white-space:pre-line'>abc\tdef") FAIL
<select size='1'> contents of options preserved ("<div><select size='1'><option>abc</option><option>def") FAIL
soft hyphen preserved ("<div>abc&shy;def") PASS
Lone <rp> rendered without whitespace trimming ("<div><rp> abc </rp>") FAIL
visibility:collapse row-group with visible cell ("<table><tbody style='visibility:collapse'><tr><td style='visibility:visible'>abc") FAIL
<img> contents ignored ("<img src='about:blank' class='poke'>") PASS
\r converted to space ("<div>abc\rdef") PASS
<iframe> contents ignored ("<iframe>abc") PASS
Tab-separated table cells ("<div><div class='itable'><span class='cell'>abc</span>\n<span class='cell'>def</span></div>") FAIL
visibility:hidden child not rendered ("<div>123<span style='visibility:hidden'>abc") PASS
\t converted to space ("<div>abc\tdef") FAIL
<br> induces line break ("<div>abc<br>def") PASS
Tab-separated table cells including empty cells ("<div><table><tr><td>abc<td><td>def</table>") FAIL
<canvas> contents ignored ("<div><canvas>abc") PASS
innerText not supported on SVG elements ("<svg>abc") PASS
visibility:hidden container ("<div style='visibility:hidden'>abc") PASS
opacity:0 child rendered ("<div>123<span style='opacity:0'>abc") PASS
Leading whitespace removed ("<div> abc") PASS
<span> boundaries are irrelevant ("<div>123<span>abc</span>def") PASS
display:none container ("<div style='display:none'>abc") PASS
<strong> gets no special treatment ("<div>123<strong>abc</strong>def") PASS
empty <option> in <div> ("<div>a<option></option>bc") FAIL
<select size='2'> contents of options preserved ("<div><select size='2'><option>abc</option><option>def") FAIL
No blank lines around <div> with margin ("<div>abc<div style='margin:2em'>def") FAIL
Newline-separated table rows ("<div><table><tr><td>abc<tr><td>def</table>") FAIL
child of display:none child of svg ("<div style='display:none'><div id='target'>abc") PASS
<br> content ignored ("<div><br class='poke'>") PASS
Single newline in two-row inline-table ("<div>abc<div class='itable'><span class='row'><span class='cell'>def</span></span>\n<span class='row'><span class='cell'>123</span></span></div>ghi") FAIL
\r converted to newline ("<span style='white-space:pre'>abc\rdef") PASS
<i> gets no special treatment ("<div>123<i>abc</i>def") PASS
No blank lines around <p> alone ("<div><p>abc") FAIL
Newline between cells and caption ("<div><table><tr><td>abc<caption>def</caption></table>") FAIL
<hr><hr> induces just one line break ("<div>abc<hr><hr>def") PASS
Simplest possible test ("<div>abc") PASS
Trailing whitespace preserved ("<div style='white-space:pre'>abc ") PASS
Trailing whitespace removed ("<div>abc ") PASS
block-in-inline doesn't add unnecessary newlines ("<div>abc<span>123<div>456</div>789</span>def") PASS
\r converted to newline ("<pre>abc\rdef") PASS
<textarea> contents ignored ("<textarea>abc") PASS
<select> containing text node child ("<select class='poke'></select>") PASS
<select size='2'> contents of options preserved ("<select size='2'><option>abc</option><option>def") FAIL
<span> boundaries are irrelevant ("<div style='width:0'>123 <span>abc</span> def") PASS
<button> contents preserved ("<div><button>abc") PASS
Generated content not included ("<div class='before'>") PASS
Whitespace collapses across element boundaries ("<div><span>abc </span> def") PASS
<iframe> subdocument ignored ("<iframe src='data:text/html,abc'>") PASS
overflow:hidden ignored even with zero width ("<div style='width:0; overflow:hidden'>abc") FAIL
<code> gets no special treatment ("<div>123<code>abc</code>def") PASS
Tab-separated table cells ("<div><table><tr><td>abc<td>def</table>") FAIL
<span> boundaries are irrelevant ("<div>123 <span>abc</span> def") PASS
<input> contents ignored ("<div><input type='text' value='abc'>") PASS
<iframe> subdocument ignored ("<div><iframe src='data:text/html,abc'>") PASS
No blank lines around <p> followed by only collapsible whitespace ("<div><p>abc</p> ") FAIL
visibility:collapse honored on grid item ("<div style='display:grid'><span style='visibility:collapse'>1</span><span>2</span></div>") PASS
Leading whitespace preserved ("<div style='white-space:pre'> abc") PASS
Tab-separated table cells ("<div><div class='table'><span class='cell'>abc</span>\n<span class='cell'>def</span></div>") FAIL
<canvas> contents ignored ("<canvas>abc") PASS
Ignoring non-rendered table whitespace ("<div><table style='white-space:pre'> <td>abc</td> </table>") FAIL
Newline at display:block boundary ("<div>123<span style='display:block'>abc</span>def") PASS
<iframe> contents ignored ("<iframe><div id='target'>abc") PASS
empty <option> in <select> ("<div>a<select><option></select>bc") FAIL
\t preserved ("<span style='white-space:pre'>abc\tdef") PASS
Internal whitespace compressed ("<div>abc def") PASS
One blank line between <p>s, ignoring empty <p>s ("<div><p>abc<p></p><p></p><p>def") FAIL

@domenic domenic merged commit a99ba66 into master Nov 3, 2016
@gsnedders gsnedders deleted the innertext-select branch February 1, 2017 22:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants