blob: a938fc464b893d8becc2ebdbee8b3a5f064d36fb [file] [log] [blame]
<!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>