|  | <!DOCTYPE HTML> | 
|  | <meta charset=utf-8> | 
|  | <title>Selection: STYLE and SCRIPT elements should be included in Selection.toString() if they are display!=none</title> | 
|  | <script src="/resources/testharness.js"></script> | 
|  | <script src="/resources/testharnessreport.js"></script> | 
|  | <script> | 
|  | window.onload = function() { | 
|  | test(function() { | 
|  | var selection = window.getSelection(); | 
|  | var p1 = document.getElementById("p1"); | 
|  |  | 
|  | var range = document.createRange(); | 
|  | test_block_script(); | 
|  | range.selectNode(p1); | 
|  | selection.addRange(range); | 
|  | assert_equals(selection.toString().replace(/\r\n/g, "\n"), '\nstyle { display:block; color: green; } script { color: blue; }\nfunction test_block_script() { let pre = document.createElement("pre"); pre.append(document.createTextNode("PASS")); document.getElementById("p1").append(pre); }\n\nPASS'); | 
|  | }); | 
|  | }; | 
|  | </script> | 
|  | <div id=log></div> | 
|  | <div id="p1"> | 
|  | <style style="display:none">#not_included{}</style> | 
|  | <style> | 
|  | style { display:block; color: green; } | 
|  | script { color: blue; } | 
|  | </style> | 
|  | <script>function not_included(){}</script> | 
|  | <script style="display:block"> | 
|  | function test_block_script() { | 
|  | let pre = document.createElement("pre"); | 
|  | pre.append(document.createTextNode("PASS")); | 
|  | document.getElementById("p1").append(pre); | 
|  | } | 
|  | </script> | 
|  | </div> | 
|  | </body> | 
|  | </html> |