<html>
<head>
<script src="../fast/js/resources/js-test-pre.js"></script>
</head>

<body>
<embed id="touch_plugin" type="application/x-webkit-test-webplugin" accepts-touch="raw" re-request-touch="true"></embed>
<p id="description"></p>
<script>
description("This test ensures that we don't imbalance the touch event handler count if a plugin requests touch events more than once. The test passes if there are no touch event listeners after the plugin is removed, and there is no crash. Must be run in DRT.");

if (window.testRunner) {
    testRunner.dumpAsText();

    // Force the plugin to initialize
    touch_plugin.offsetTop;

    shouldBe("window.internals.touchEventHandlerCount(document)", "1")
    touch_plugin.parentNode.removeChild(touch_plugin);
    shouldBe("window.internals.touchEventHandlerCount(document)", "0")
}

</script>
</body>
<script src="../fast/js/resources/js-test-post.js"></script>
