OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE HTML> | |
2 <script src="../../../../resources/js-test.js"></script> | |
3 <style> | |
4 #target { | |
5 position: absolute; | |
6 right: 10px; | |
7 top: 10px; | |
8 border: 1px solid blue; | |
9 } | |
10 </style> | |
11 <div id=target> | |
12 Tap me | |
13 </div> | |
14 <script> | |
15 | |
16 if (window.testRunner) | |
17 testRunner.dumpAsText(); | |
18 | |
19 function eventLogger(e) { | |
20 debug("Received " + e.type + " on " + (e.currentTarget.id || e.currentTarget .nodeName)); | |
21 } | |
22 | |
23 function logAndRemove(e) { | |
24 eventLogger(e); | |
25 e.currentTarget.parentNode.removeChild(e.currentTarget); | |
26 debug("Removed element"); | |
27 e = null; | |
28 gc(); | |
29 } | |
30 | |
31 function logAndFail(e) { | |
32 eventLogger(e); | |
33 testFailed("Received unexpected event."); | |
34 } | |
35 | |
36 function getTargetPoint() { | |
37 // Note that we don't want any reference to the node to escape this function | |
38 // so that it's elligble for garbage collection. | |
39 var target = document.getElementById('target'); | |
40 target.addEventListener('mousemove', logAndRemove); | |
41 target.addEventListener('mousedown', eventLogger); | |
42 target.addEventListener('mouseup', eventLogger); | |
43 target.addEventListener('click', eventLogger); | |
44 document.addEventListener('mousemove', eventLogger); | |
45 document.addEventListener('mousedown', logAndFail); | |
46 document.addEventListener('mouseup', logAndFail); | |
47 document.addEventListener('click', logAndFail); | |
48 | |
49 var rect = target.getBoundingClientRect(); | |
50 return { | |
51 x: rect.left + rect.width / 2, | |
52 y: rect.top + rect.height / 2 | |
53 }; | |
54 } | |
55 | |
56 onload = function() { | |
57 description("Verifies that deleting the element being tapped during the even t sequence doesn't cause any problems. Succeeds if the expected events are deli vered to the div and we don't crash."); | |
Zeeshan Qureshi
2014/06/26 21:20:50
It might be helpful to mention that we expect the
Rick Byers
2014/06/26 21:29:01
Done.
| |
58 | |
59 var point = getTargetPoint(); | |
60 | |
61 if (!window.eventSender) { | |
62 debug("This test requires eventSender"); | |
63 return; | |
64 } | |
65 | |
66 debug("Sending GestureTapDown"); | |
67 eventSender.gestureTapDown(point.x, point.y); | |
68 | |
69 debug("Sending GestureShowPress"); | |
70 eventSender.gestureShowPress(point.x, point.y); | |
71 | |
72 debug("Sending GestureTap"); | |
73 eventSender.gestureTap(point.x, point.y); | |
74 } | |
75 | |
76 </script> | |
OLD | NEW |