<html>
<head>
<script src="../resources/js-test.js"></script>
<script src="../resources/gesture-util.js"></script>
<style>
  #plugin {
    width: 150px;
    height: 150px;
  }
</style>
</head>

<body onload="runTest();">
<embed id="plugin" type="application/x-webkit-test-webplugin" primitive="triangle" background-color="green" primitive-color="blue"></embed>
<script>
jsTestIsAsync = true;
async function runTest() {
    if (!window.testRunner) {
        document.write("This test does not work in manual mode.");
    } else {
        testRunner.dumpAsText();

        // Send some gesture events to the plugin.
        var positionX = plugin.offsetLeft + 10;
        var positionY = plugin.offsetTop + 10;
        await touchTapOn(positionX, positionY);
        await smoothScrollWithXY(30, 0, positionX, positionY, GestureSourceType.TOUCH_INPUT, SPEED_INSTANT);
    }
    finishJSTest();
}
</script>
</body>
</html>
