blob: 5e75e9d869dca0ed42761a794c9a97059e3175bd [file] [log] [blame]
<!-- webkit-test-runner [ enableModernMediaControls=false ] -->
<html>
<head>
<title>Test that dragging the volume slider results in multiple volume change events.</title>
<script src="media-file.js"></script>
<script src="media-controls.js"></script>
<script src="video-test.js"></script>
<script>
var video;
var expectedVolumeChangeCount = 4;
var volumeChangeCount = 0;
function init()
{
if (window.internals)
internals.suspendAnimations();
findMediaElement();
waitForEvent('canplaythrough', startTest);
waitForEvent('volumechange', volumeChange);
video.src = findMediaFile('video', 'content/test');
}
function startTest()
{
if (!window.eventSender)
return;
muteCoords = mediaControlsButtonCoordinates(video, 'mute-button');
eventSender.mouseMoveTo(muteCoords[0], muteCoords[1]);
setTimeout(move, 100);
}
function move()
{
if (!window.eventSender)
return;
volumeCoords = mediaControlsButtonCoordinates(video, 'volume-slider');
eventSender.mouseMoveTo(volumeCoords[0], volumeCoords[1]);
eventSender.mouseDown();
for (var i = 10; i < 80; i += 5)
eventSender.mouseMoveTo(volumeCoords[0], volumeCoords[1] - i);
eventSender.mouseUp();
failTestIn(1000);
}
function volumeChange()
{
if (++volumeChangeCount === expectedVolumeChangeCount)
endTest();
}
</script>
</head>
<body onload="init()">
<video controls></video>
</body>
</html>