OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <!-- |
| 3 Distributed under both the W3C Test Suite License [1] and the W3C |
| 4 3-clause BSD License [2]. To contribute to a W3C Test Suite, see the |
| 5 policies and contribution forms [3]. |
| 6 |
| 7 [1] http://www.w3.org/Consortium/Legal/2008/04-testsuite-license |
| 8 [2] http://www.w3.org/Consortium/Legal/2008/03-bsd-license |
| 9 [3] http://www.w3.org/2004/10/27-testcases |
| 10 --> |
| 11 <html> |
| 12 <head> |
| 13 <title>Shadow DOM Test - event path</title> |
| 14 <link rel="author" title="Kazuhito Hokamura" href="mailto:k.hokamura@gmail.com"> |
| 15 <link rel="help" href="https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/sh
adow/index.html#extensions-to-event"> |
| 16 <meta name="assert" content="Extensions to Event Interface: event.path cross the
shadow boundary"> |
| 17 <script src="../../../../../resources/testharness.js"></script> |
| 18 <script src="../../../../../resources/testharnessreport.js"></script> |
| 19 <script src="../../testcommon.js"></script> |
| 20 <link rel="stylesheet" href="../../../../../resources/testharness.css"> |
| 21 </head> |
| 22 <body> |
| 23 <div id="log"></div> |
| 24 <script> |
| 25 var t = async_test('event.path cross the shadow boundary'); |
| 26 |
| 27 t.step(unit(function(ctx) { |
| 28 var doc = newRenderedHTMLDocument(ctx); |
| 29 var host = doc.createElement('div'); |
| 30 |
| 31 var shadowRoot = host.createShadowRoot(); |
| 32 var child = doc.createElement('div'); |
| 33 |
| 34 doc.body.appendChild(host); |
| 35 shadowRoot.appendChild(child); |
| 36 |
| 37 child.addEventListener('click', t.step_func(function(e) { |
| 38 assert_equals(e.path.length, 6, 'path.length'); |
| 39 assert_equals(e.path[0], child, 'path[0] should be child'); |
| 40 assert_equals(e.path[1], shadowRoot, 'path[1] should be shadowRoot'); |
| 41 assert_equals(e.path[2], host, 'path[2] should be host'); |
| 42 assert_equals(e.path[3], doc.body, 'path[3] should be body'); |
| 43 assert_equals(e.path[4], doc.documentElement, 'path[4] should be html'); |
| 44 assert_equals(e.path[5], doc, 'path[5] should be document'); |
| 45 |
| 46 t.done(); |
| 47 })); |
| 48 |
| 49 var event = doc.createEvent('HTMLEvents'); |
| 50 event.initEvent('click', true, false); |
| 51 child.dispatchEvent(event); |
| 52 })); |
| 53 </script> |
| 54 </body> |
| 55 </html> |
OLD | NEW |