| Index: third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-handler-count.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-handler-count.html b/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-handler-count.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..c22df7aecc209d7277519ad8adb55553bada8812
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/fast/events/pointerevents/pointer-handler-count.html
|
| @@ -0,0 +1,120 @@
|
| +<script src='../../../resources/testharness.js'></script>
|
| +<script src='../../../resources/testharnessreport.js'></script><script>
|
| +
|
| +(function() {
|
| + var listener = function() { }
|
| +
|
| + test(function() {
|
| +
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + document.addEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + document.addEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| + document.addEventListener('pointerenter', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 3);
|
| + document.addEventListener('pointerout', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 4);
|
| + document.removeEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 3);
|
| + document.removeEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| +
|
| + // Try removing the capturing listener again.
|
| + document.removeEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| + document.removeEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| +
|
| + document.removeEventListener('pointerenter', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + document.removeEventListener('pointerout', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| +
|
| + }, "Test 1: addEventListener/removeEventListener on the document");
|
| +
|
| +})();
|
| +
|
| +(function() {
|
| + test(function() {
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + document.onpointerenter = function() { }
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + document.onpointerenter = function() { }
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + document.onpointerenter = null;
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + }, "Test 2: setting onpointerenter on the document");
|
| +})();
|
| +
|
| +(function() {
|
| + var listener = function() { }
|
| +
|
| + test(function() {
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + window.addEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + window.addEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| + window.addEventListener('pointerenter', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 3);
|
| + window.addEventListener('pointerout', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 4);
|
| + window.removeEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 3);
|
| + window.removeEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| +
|
| + // Try removing the capturing listener again.
|
| + window.removeEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| + window.removeEventListener('pointerout', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| +
|
| + window.removeEventListener('pointerenter', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + window.removeEventListener('pointerout', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + }, "Test 3: addEventListener/removeEventListener on the window");
|
| +})();
|
| +
|
| +(function() {
|
| + test(function() {
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + window.onpointerenter = function() { }
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + window.onpointerenter = function() { }
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + window.onpointerenter = null;
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + }, "Test 4: setting onpointerenter on the window");
|
| +})();
|
| +
|
| +(function() {
|
| + var listener = function() { }
|
| + test(function() {
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 0);
|
| + document.addEventListener('pointerenter', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 1);
|
| + document.addEventListener('pointerover', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 2);
|
| + document.addEventListener('pointerleave', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 3);
|
| + document.addEventListener('pointerout', listener, false);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 4);
|
| + document.addEventListener('pointermove', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 5);
|
| + document.addEventListener('pointerup', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 6);
|
| + document.addEventListener('pointerdown', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 7);
|
| + document.addEventListener('pointercancel', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 8);
|
| + document.addEventListener('gotpointercapture', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 9);
|
| + document.addEventListener('lostpointercapture', listener, true);
|
| + assert_equals(window.internals.pointerEventHandlerCount(document), 10);
|
| + }, "Test 5: test addEventListener for all possible pointer event");
|
| +})();
|
| +</script>
|
| +</body>
|
|
|