<html>
<head>
<script src="../resources/js-test.js"></script>
<script src="../resources/user-gesture-utils.js"></script>
<script src="vibration-utils.js"></script>
</head>
<body>
<h4 id="test"></h4>
<script>
description('Tests for how durations are handled in the Vibration API.');
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.dumpChildFrames();
}
var element = document.getElementById("test");
simulateUserClick(element.offsetLeft + 2, element.offsetTop + 2);
shouldBeTrue("navigator.vibrate([])");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [])");
shouldBeFalse("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate(0)");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [])");
shouldBeFalse("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate([0])");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [])");
shouldBeFalse("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate(10000)");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [10000])");
shouldBeTrue("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate(10001)");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [10000])");
shouldBeTrue("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate([10001, 10001, 10001])");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [10000, 10000, 10000])");
shouldBeTrue("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate(-1)");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [])");
shouldBeFalse("internals.isVibrating(navigator)");
stopVibration();
shouldBeTrue("navigator.vibrate([-1, -1, -1])");
shouldBeTrue("areArraysEqual(internals.pendingVibrationPattern(navigator), [10000, 10000, 10000])");
shouldBeTrue("internals.isVibrating(navigator)");
stopVibration();
</script>
</body>
</html>