| OLD | NEW |
| (Empty) | |
| 1 <!DOCTYPE HTML> |
| 2 <script src="../../../resources/testharness.js"></script> |
| 3 <script src="../../../resources/testharnessreport.js"></script> |
| 4 |
| 5 <h1>PointerEvent: Verifies that mouse boundary events don't point to shadow-dom<
/h1> |
| 6 |
| 7 <input id="target" style="margin: 20px"> |
| 8 |
| 9 <script> |
| 10 var receivedEvents = []; |
| 11 |
| 12 function testReceivedEvents(expectedEvents, testLabel) { |
| 13 test(function() { |
| 14 assert_array_equals(receivedEvents, expectedEvents); |
| 15 }, testLabel); |
| 16 receivedEvents = []; |
| 17 } |
| 18 |
| 19 function name(node) { |
| 20 return node? node.tagName : "(null)"; |
| 21 } |
| 22 |
| 23 function init() { |
| 24 var targetEvents = ["mouseout", "pointerout", "mouseover", "pointerover"]; |
| 25 |
| 26 targetEvents.forEach(function(eventName) { |
| 27 window.addEventListener(eventName, function(e) { |
| 28 var eventDetails = e.type + |
| 29 " target=" + name(e.target) + |
| 30 " relatedTarget=" + name(e.relatedTarget); |
| 31 receivedEvents.push(eventDetails); |
| 32 }); |
| 33 }); |
| 34 } |
| 35 |
| 36 function runTests() { |
| 37 var rect = document.getElementById("target").getBoundingClientRect(); |
| 38 eventSender.mouseMoveTo(rect.left - 10, rect.top - 10); |
| 39 receivedEvents = []; |
| 40 |
| 41 eventSender.mouseMoveTo(rect.left + 10, rect.top + 10); |
| 42 testReceivedEvents([ |
| 43 "pointerout target=BODY relatedTarget=INPUT", |
| 44 "pointerover target=INPUT relatedTarget=BODY", |
| 45 "mouseout target=BODY relatedTarget=INPUT", |
| 46 "mouseover target=INPUT relatedTarget=BODY", |
| 47 ], "Moved into <input>"); |
| 48 |
| 49 eventSender.mouseMoveTo(rect.left - 10, rect.top - 10); |
| 50 testReceivedEvents([ |
| 51 "pointerout target=INPUT relatedTarget=BODY", |
| 52 "pointerover target=BODY relatedTarget=INPUT", |
| 53 "mouseout target=INPUT relatedTarget=BODY", |
| 54 "mouseover target=BODY relatedTarget=INPUT", |
| 55 ], "Moved out of <input>"); |
| 56 } |
| 57 |
| 58 test(function() { |
| 59 if (!window.eventSender) |
| 60 assert_true(true, "No eventSender, skipped tests"); |
| 61 else if (!window.PointerEvent) |
| 62 assert_true(true, "No PointerEvent, skipped tests"); |
| 63 else { |
| 64 init(); |
| 65 runTests(); |
| 66 } |
| 67 |
| 68 done(); |
| 69 }, "PointerEvent: Verifies that mouse boundary events don't point to shadow-dom"
); |
| 70 </script> |
| OLD | NEW |