Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(137)

Side by Side Diff: LayoutTests/fast/dom/shadow/shadow-element-distributed-nodes.html

Issue 59903015: [Shadow DOM]: Empty shadow insertion points should behave like <shadow><content *leftover*></conten… (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <script src="../../../resources/js-test.js"></script> 4 <script src="../../../resources/js-test.js"></script>
5 <script src="resources/shadow-dom.js"></script> 5 <script src="resources/shadow-dom.js"></script>
6 </head> 6 </head>
7 <body> 7 <body>
8 <div id='console'></div> 8 <div id='console'></div>
9 <div id='sandbox'></div> 9 <div id='sandbox'></div>
10 <script> 10 <script>
11 description("Tests for a shadow element's getDistributedNodes()."); 11 description("Tests for a shadow element's getDistributedNodes().");
12 12
13 var sandbox = document.getElementById('sandbox'); 13 var sandbox = document.getElementById('sandbox');
14 14
15 function prepareTree(root) { 15 function prepareTree(root) {
16 sandbox.innerHTML = ''; 16 sandbox.innerHTML = '';
17 sandbox.appendChild(root); 17 sandbox.appendChild(root);
18 } 18 }
19 19
20 function assertDistributedNodes(insertionPointId, expectedDistributedNodes) { 20 function assertDistributedNodes(insertionPointId, expectedDistributedNodes) {
21 debug('\ngetDistributedNodes() for "' + insertionPointId + '" should return [' + expectedDistributedNodes + ']'); 21 debug('\ngetDistributedNodes() for "' + insertionPointId + '" should return [' + expectedDistributedNodes + ']');
22 var insertionPoint = getNodeInTreeOfTrees(insertionPointId); 22 var insertionPoint = getNodeInTreeOfTrees(insertionPointId);
23 var distributedNodes = insertionPoint.getDistributedNodes(); 23 var distributedNodes = insertionPoint.getDistributedNodes();
24 window.distributedNodes = distributedNodes; 24 window.distributedNodes = distributedNodes;
25 window.expectedDistributedNodes = expectedDistributedNodes; 25 window.expectedDistributedNodes = expectedDistributedNodes;
26 shouldBe("distributedNodes.length", "expectedDistributedNodes.length"); 26 shouldBe("distributedNodes.length", "expectedDistributedNodes.length");
27 for (var i = 0; i < distributedNodes.length; ++i) { 27 for (var i = 0; i < distributedNodes.length && i < expectedDistributedNodes. length; ++i) {
28 shouldBe("distributedNodes.item(" + i + ")", "getNodeInTreeOfTrees(expec tedDistributedNodes[" + i + "])"); 28 shouldBe("distributedNodes.item(" + i + ")", "getNodeInTreeOfTrees(expec tedDistributedNodes[" + i + "])");
29 } 29 }
30 } 30 }
31 31
32 prepareTree( 32 prepareTree(
33 createDOM('shadow', {'id': 'shadow'})); 33 createDOM('shadow', {'id': 'shadow'}));
34 assertDistributedNodes('shadow', []); 34 assertDistributedNodes('shadow', []);
35 35
36 prepareTree( 36 prepareTree(
37 createDOM('div', {'id': 'host'}, 37 createDOM('div', {'id': 'host'},
38 createShadowRoot( 38 createShadowRoot(
39 createDOM('shadow', {'id': 'shadow'})))); 39 createDOM('shadow', {'id': 'shadow'}))));
40 assertDistributedNodes('host/shadow', []); 40 assertDistributedNodes('host/shadow', []);
41 41
42 prepareTree( 42 prepareTree(
43 createDOM('div', {'id': 'host'}, 43 createDOM('div', {'id': 'host'},
44 createShadowRoot( 44 createShadowRoot(
45 createDOM('shadow', {'id': 'shadow'}, 45 createDOM('shadow', {'id': 'shadow'},
46 createDOM('div', {'id': 'shadow-child'}))))); 46 createDOM('div', {'id': 'shadow-child'})))));
47 assertDistributedNodes('host/shadow', ['host/shadow-child']); 47 assertDistributedNodes('host/shadow', ['host/shadow-child']);
48 48
49 prepareTree( 49 prepareTree(
50 createDOM('div', {'id': 'host'}, 50 createDOM('div', {'id': 'host'},
51 createShadowRoot( 51 createShadowRoot(
52 createDOM('shadow', {'id': 'shadow'})), 52 createDOM('shadow', {'id': 'shadow'})),
53 createDOM('div', {'id': 'host-child'}))); 53 createDOM('div', {'id': 'host-child'})));
54 assertDistributedNodes('host/shadow', []); 54 assertDistributedNodes('host/shadow', ['host-child']);
55 55
56 prepareTree( 56 prepareTree(
57 createDOM('div', {'id': 'host'}, 57 createDOM('div', {'id': 'host'},
58 createShadowRoot( 58 createShadowRoot(
59 createDOM('shadow', {'id': 'shadow'}, 59 createDOM('shadow', {'id': 'shadow'},
60 createDOM('content'))), 60 createDOM('content'))),
61 createDOM('div', {'id': 'host-child'}))); 61 createDOM('div', {'id': 'host-child'})));
62 assertDistributedNodes('host/shadow', ['host-child']); 62 assertDistributedNodes('host/shadow', ['host-child']);
63 63
64 prepareTree( 64 prepareTree(
(...skipping 15 matching lines...) Expand all
80 80
81 prepareTree( 81 prepareTree(
82 createDOM('div', {'id': 'host'}, 82 createDOM('div', {'id': 'host'},
83 createShadowRoot( 83 createShadowRoot(
84 createDOM('div', {'id': 'older-child-1'}), 84 createDOM('div', {'id': 'older-child-1'}),
85 createDOM('content', {'id': 'content'}), 85 createDOM('content', {'id': 'content'}),
86 createDOM('div', {'id': 'older-child-2'})), 86 createDOM('div', {'id': 'older-child-2'})),
87 createShadowRoot( 87 createShadowRoot(
88 createDOM('shadow', {'id': 'shadow'})), 88 createDOM('shadow', {'id': 'shadow'})),
89 createDOM('div', {'id': 'host-child'}))); 89 createDOM('div', {'id': 'host-child'})));
90 assertDistributedNodes('host//shadow', ['host/older-child-1', 'host/older-child- 2']); 90 assertDistributedNodes('host//shadow', ['host/older-child-1', 'host-child', 'hos t/older-child-2']);
91 91
92 prepareTree( 92 prepareTree(
93 createDOM('div', {'id': 'host'}, 93 createDOM('div', {'id': 'host'},
94 createShadowRoot( 94 createShadowRoot(
95 createDOM('div', {'id': 'older-child-1'}), 95 createDOM('div', {'id': 'older-child-1'}),
96 createDOM('content', {'id': 'content'}), 96 createDOM('content', {'id': 'content'}),
97 createDOM('div', {'id': 'older-child-2'})), 97 createDOM('div', {'id': 'older-child-2'})),
98 createShadowRoot( 98 createShadowRoot(
99 createDOM('shadow', {'id': 'shadow'}, 99 createDOM('shadow', {'id': 'shadow'},
100 createDOM('content'))), 100 createDOM('content'))),
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 createShadowRoot( 137 createShadowRoot(
138 createDOM('shadow', {'id': 'shadow'}, 138 createDOM('shadow', {'id': 'shadow'},
139 createDOM('content'))), 139 createDOM('content'))),
140 createDOM('div', {'id': 'host-child'}))); 140 createDOM('div', {'id': 'host-child'})));
141 assertDistributedNodes('host//older-shadow', ['host/oldest-child-1', 'host-child ', 'host/oldest-child-2']); 141 assertDistributedNodes('host//older-shadow', ['host/oldest-child-1', 'host-child ', 'host/oldest-child-2']);
142 assertDistributedNodes('host///shadow', ['host//older-child-1', 'host/oldest-chi ld-1', 'host-child', 'host/oldest-child-2', 'host//older-child-2']); 142 assertDistributedNodes('host///shadow', ['host//older-child-1', 'host/oldest-chi ld-1', 'host-child', 'host/oldest-child-2', 'host//older-child-2']);
143 143
144 </script> 144 </script>
145 </body> 145 </body>
146 </html> 146 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698