Index: third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html |
diff --git a/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html b/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html |
index 7cf88e8f7ec042942d72359252892e7fcb3d6351..99c036514df4a694aa1531f15f3a34195c5f152e 100644 |
--- a/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html |
+++ b/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html |
@@ -36,17 +36,24 @@ debug("Test setting touch handlers on the document."); |
document.ontouchmove = function() {} |
document.ontouchend = function() {} |
document.ontouchcancel = function() {} |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
document.ontouchstart = function() { } |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
document.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
document.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
- document.ontouchmove = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
document.ontouchend = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
+ document.ontouchmove = null; |
document.ontouchcancel = null; |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
})(); |
debug("Test addEventListener/removeEventListener on the window."); |
@@ -82,17 +89,24 @@ debug("Test setting touch handlers on the window."); |
window.ontouchmove = function() {} |
window.ontouchend = function() {} |
window.ontouchcancel = function() {} |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
window.ontouchstart = function() { } |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
window.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
window.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
- window.ontouchmove = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
window.ontouchend = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
+ window.ontouchmove = null; |
window.ontouchcancel = null; |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
})(); |
debug("Test addEventListener/removeEventListener on a div."); |
@@ -131,17 +145,24 @@ debug("Test setting touch handlers on a div."); |
div.ontouchmove = function() { } |
div.ontouchend = function() { } |
div.ontouchcancel = function() { } |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
div.ontouchstart = function() { } |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
div.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
div.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
- div.ontouchmove = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
div.ontouchend = null; |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
+ div.ontouchmove = null; |
div.ontouchcancel = null; |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
})(); |
debug("Test redudant addEventListener on a div."); |
@@ -167,29 +188,34 @@ debug("Test addEventListener/removeEventListener on a new div."); |
var listener = function() { } |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
div.addEventListener('touchstart', listener, true); |
div.addEventListener('touchmove', listener, true); |
shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
touchtarget.appendChild(div); |
shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
div.addEventListener('touchend', listener, true); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
div.removeEventListener('touchstart', listener, true); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
touchtarget.removeChild(div); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
div.removeEventListener('touchmove', listener, false); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
div.removeEventListener('touchmove', listener, true); |
div.removeEventListener('touchend', listener, true); |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
})(); |
debug("Test setting touch handlers on a new div."); |
@@ -205,19 +231,24 @@ debug("Test setting touch handlers on a new div."); |
touchtarget.appendChild(div); |
shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
div.ontouchend = function() { } |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
div.ontouchstart = null; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
touchtarget.removeChild(div); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
div.ontouchend = null; |
div.ontouchmove = null; |
shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0'); |
})(); |
var nestedDocument; |
@@ -228,7 +259,8 @@ debug("Test that nested Documents' touch handlers are properly tracked in their |
var touchtarget = document.getElementById('touchtarget'); |
touchtarget.ontouchend = function() {}; |
- shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
touchtarget.appendChild(iframe); |
@@ -236,25 +268,34 @@ debug("Test that nested Documents' touch handlers are properly tracked in their |
nestedDocument.open('text/html', 'replace'); |
nestedDocument.write('<!DOCTYPE html>\n<script>\nwindow.ontouchstart=function(){};\n</' + 'script>\n' + |
'<div id=twoHandlers ontouchmove="function(){}" ontouchcancel="function(){}"></div>'); |
- shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '4'); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
nestedDocument.write('<script>window.ontouchstart=undefined</' + 'script>\n'); |
- shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '3'); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '3'); |
+ shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
nestedDocument.write('<script>document.addEventListener("touchmove", function(){});</' + 'script>\n'); |
- shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '4'); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '4'); |
+ shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2'); |
nestedDocument.write('<script>document.getElementById("twoHandlers").remove();</' + 'script>\n'); |
gc(); |
- shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2'); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '2'); |
+ shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '1'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
nestedDocument.close(); |
touchtarget.removeChild(iframe); |
- shouldBe('window.internals.touchEventHandlerCount(document)', '1'); |
+ shouldBe('window.internals.touchEventHandlerCount(document)', '0'); |
+ shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1'); |
})(); |
</script> |
</body> |