| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src="../../../resources/js-test.js"></script> |
| <script src="resources/shadow-dom.js"></script> |
| </head> |
| <body> |
| <script> |
| description("Tests for getDestinationInsertionPoints() which involves re-distribution."); |
| |
| document.body.appendChild( |
| createDOM('div', {}, |
| createDOM('div', {'id': 'host-1'}, |
| createShadowRoot( |
| createDOM('div', {'id': 'host-2'}, |
| createShadowRoot( |
| createDOM('content', {'id': 'content-2'})), |
| createDOM('content', {'id': 'content-1'}))), |
| createDOM('div', {'id': 'child-1'})))); |
| |
| shouldBeEqualAsArray(document.getElementById('child-1').getDestinationInsertionPoints(), |
| [getNodeInComposedTree('host-1/content-1'), getNodeInComposedTree('host-1/host-2/content-2')]); |
| |
| document.body.appendChild( |
| createDOM('div', {}, |
| createDOM('div', {'id': 'host-10'}, |
| createShadowRoot( |
| createDOM('div', {'id': 'host-20'}, |
| createShadowRoot( |
| {'mode': 'open'}, |
| createDOM('content', {'id': 'content-20'})), |
| createDOM('content', {'id': 'content-10'}))), |
| createDOM('div', {'id': 'child-10'})))); |
| |
| shouldBeEqualAsArray(document.getElementById('child-10').getDestinationInsertionPoints(), |
| [getNodeInComposedTree('host-10/content-10')]); |
| |
| document.body.appendChild( |
| createDOM('div', {}, |
| createDOM('div', {'id': 'host-11'}, |
| createShadowRoot( |
| createDOM('div', {'id': 'host-21'}, |
| createShadowRoot( |
| {'mode': 'closed'}, |
| createDOM('content', {'id': 'content-21'})), |
| createDOM('content', {'id': 'content-11'}))), |
| createDOM('div', {'id': 'child-11'})))); |
| |
| shouldBeEqualAsArray(document.getElementById('child-11').getDestinationInsertionPoints(), |
| [getNodeInComposedTree('host-11/content-11')]); |
| |
| document.body.appendChild( |
| createDOM('div', {}, |
| createDOM('div', {'id': 'host-12'}, |
| createShadowRoot( |
| {'mode': 'closed'}, |
| createDOM('div', {'id': 'host-22'}, |
| createShadowRoot( |
| createDOM('content', {'id': 'content-22'})), |
| createDOM('content', {'id': 'content-12'}))), |
| createDOM('div', {'id': 'child-12'})))); |
| |
| shouldBe('document.getElementById("child-12").getDestinationInsertionPoints().length', '0'); |
| </script> |
| </body> |
| </html> |