blob: 1eddc0ddc91ba3eb87b3b91f5eb7b85becfcf6e6 [file] [log] [blame]
<script src="../../../resources/js-test.js"></script>
<div id='container'></div>
<script>
description("This test checks that we correctly update the touch event handler count when an Input element with default touch handlers changes documents.");
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '0');
// There are two touchable Input elements in Audio's shadow DOM when controls are enabled.
var input = document.createElement('audio');
input.setAttribute("controls", true);
var container = document.getElementById('container');
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '0');
container.appendChild(input);
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '2');
shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
input.ontouchend = function() { };
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '2');
shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
input.ontouchend = null;
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '2');
shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
document.implementation.createDocument("", "", null).adoptNode(input);
shouldBe('window.internals.touchStartOrMoveEventHandlerCount(document)', '0');
</script>
</body>