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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/dom/shadow/events-stopped-at-shadow-boundary.html

Issue 1586563005: Add Event.scoped (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove error from test case as it bubbles up and fails test\ Created 4 years, 11 months 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
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 <p id="description"></p> 8 <p id="description"></p>
9 <div id="sandbox"></div> 9 <div id="sandbox"></div>
10 <pre id="console"></pre> 10 <pre id="console"></pre>
11 <script> 11 <script>
12 description("Tests to ensure that some kinds of events are stopeed at shadow bou ndary."); 12 description("Tests to ensure that all kinds of events are not stopeed at shadow boundary if created by users.");
13 13
14 var eventRecords = {}; 14 var eventRecords = {};
15 15
16 function dispatchedEvent(eventType) 16 function dispatchedEvent(eventType)
17 { 17 {
18 var events = eventRecords[eventType]; 18 var events = eventRecords[eventType];
19 if (!events) 19 if (!events)
20 return []; 20 return [];
21 return events; 21 return events;
22 } 22 }
(...skipping 19 matching lines...) Expand all
42 eventString += ' (target: ' + event.target.id + ')'; 42 eventString += ' (target: ' + event.target.id + ')';
43 if (event.relatedTarget) 43 if (event.relatedTarget)
44 eventString += ' (related: ' + event.relatedTarget.id + ')'; 44 eventString += ' (related: ' + event.relatedTarget.id + ')';
45 if (event.eventPhase == 1) 45 if (event.eventPhase == 1)
46 eventString += '(capturing phase)'; 46 eventString += '(capturing phase)';
47 if (event.target && event.currentTarget && event.target.id == event.currentT arget.id) 47 if (event.target && event.currentTarget && event.target.id == event.currentT arget.id)
48 shouldBe("event.eventPhase", "2", true); 48 shouldBe("event.eventPhase", "2", true);
49 eventRecords[eventType].push(eventString); 49 eventRecords[eventType].push(eventString);
50 } 50 }
51 51
52 debug('Other events than "click" should be stopped at shadow boundary. A "click " is added for the purpose of comparing results.'); 52 debug('None of the events should be stopped at a Shadow boundary if created by u sers.');
53 53
54 var events = ['abort', 'select', 'change', 'reset', 'resize', 'scroll', 'selects tart', 'load', 'error', 'click']; 54 var events = ['abort', 'select', 'change', 'reset', 'resize', 'scroll', 'selects tart', 'load', 'click'];
kochi 2016/01/27 06:02:16 For the record, the 'error' event bubbles up out o
55 55
56 function addEventListeners(nodes) 56 function addEventListeners(nodes)
57 { 57 {
58 for (var i = 0; i < nodes.length; ++i) { 58 for (var i = 0; i < nodes.length; ++i) {
59 var node = getNodeInTreeOfTrees(nodes[i]); 59 var node = getNodeInTreeOfTrees(nodes[i]);
60 for (var j = 0; j < events.length; ++j) 60 for (var j = 0; j < events.length; ++j)
61 node.addEventListener(events[j], recordEvent, false); 61 node.addEventListener(events[j], recordEvent, false);
62 } 62 }
63 } 63 }
64 64
65 function testEventsShoudBeStoppedAtShadowBoundary() 65 function testEventsShouldNotBeStoppedAtShadowBoundary()
66 { 66 {
67 var sandbox = document.getElementById('sandbox'); 67 var sandbox = document.getElementById('sandbox');
68 sandbox.innerHTML = ''; 68 sandbox.innerHTML = '';
69 sandbox.appendChild( 69 sandbox.appendChild(
70 createDOM('div', {'id': 'top'}, 70 createDOM('div', {'id': 'top'},
71 createDOM('div', {'id': 'host'}, 71 createDOM('div', {'id': 'host'},
72 createShadowRoot( 72 createShadowRoot(
73 createDOM('div', {'id': 'parent-of-target'}, 73 createDOM('div', {'id': 'parent-of-target'},
74 createDOM('div', {'id': 'target'})), 74 createDOM('div', {'id': 'target'})),
75 createDOM('div', {'id': 'parent-of-content'}, 75 createDOM('div', {'id': 'parent-of-content'},
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 131
132 eventRecords = {}; 132 eventRecords = {};
133 var event = document.createEvent('UIEvent'); 133 var event = document.createEvent('UIEvent');
134 event.initEvent('selectstart', true, false); 134 event.initEvent('selectstart', true, false);
135 getNodeInTreeOfTrees('shadow-host/target').dispatchEvent(event); 135 getNodeInTreeOfTrees('shadow-host/target').dispatchEvent(event);
136 dumpDispatchedEvent('selectstart'); 136 dumpDispatchedEvent('selectstart');
137 } 137 }
138 138
139 function test() 139 function test()
140 { 140 {
141 testEventsShoudBeStoppedAtShadowBoundary() 141 testEventsShouldNotBeStoppedAtShadowBoundary();
142 testEventsFiredOnDistributedNodesShouldNotBeStoppedAtShadowBoundary(); 142 testEventsFiredOnDistributedNodesShouldNotBeStoppedAtShadowBoundary();
143 testEventsInMultipleShadowTrees(); 143 testEventsInMultipleShadowTrees();
144 } 144 }
145 test(); 145 test();
146 </script> 146 </script>
147 </body> 147 </body>
148 </html> 148 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698