declarative-shadow-dom-repeats-2.html (1290B)
1 <!DOCTYPE html> 2 <title>Duplicate declarative shadow trees</title> 3 <script src=/resources/testharness.js></script> 4 <script src=/resources/testharnessreport.js></script> 5 6 <div id=multiple1> 7 <template shadowrootmode=open>1</template> 8 <template shadowrootmode=open>2</template> 9 <template shadowrootmode=open>3</template> 10 </div> 11 12 <div id=multiple2> 13 <template shadowrootmode=closed>1</template> 14 <template shadowrootmode=closed>2</template> 15 <template shadowrootmode=open>3</template> 16 </div> 17 18 <script> 19 test((t) => { 20 t.add_cleanup(() => { 21 multiple1.remove(); 22 multiple2.remove(); 23 }); 24 let shadow = multiple1.shadowRoot; 25 assert_true(!!shadow,'Remaining shadow root should be open'); 26 assert_equals(shadow.textContent,"1"); 27 assert_equals(multiple1.childElementCount, 2); 28 assert_equals(multiple1.firstElementChild.content.textContent, "2"); 29 assert_equals(multiple1.lastElementChild.content.textContent, "3"); 30 shadow = multiple2.shadowRoot; 31 assert_false(!!shadow,'Remaining shadow root should be closed'); 32 assert_equals(multiple2.childElementCount, 2); 33 assert_equals(multiple2.firstElementChild.content.textContent, "2"); 34 assert_equals(multiple2.lastElementChild.content.textContent, "3"); 35 },'Repeated declarative shadow roots keep only the first'); 36 </script>