Source code

Revision control

Other Tools

Test Info: Warnings

  • This test gets skipped with pattern: (os == "win" && processor == "aarch64")
<!DOCTYPE HTML>
<html>
<head>
<title> Bug 1013933 - preserve playbackRate after clicking play button </title>
<script src="/tests/SimpleTest/SimpleTest.js"></script>
<script src="/tests/SimpleTest/EventUtils.js"></script>
<script type="application/javascript" src="browserElementTestHelpers.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
</head>
<body>
<div id="content">
<video width="320" height="240" id="video" controls mozNoDynamicControls preload="auto"></video>
</div>
<script type="text/javascript">
/*
* Positions of the UI elements, relative to the upper-left corner of the
* <video> box.
*/
const videoHeight = 240;
const playButtonWidth = 28;
const playButtonHeight = 28;
const playButtonCenterX = 0 + Math.round(playButtonWidth / 2);
const playButtonCenterY = videoHeight - Math.round(playButtonHeight / 2);
var expectedPlaybackRate = 0.5
function runTest() {
var video = document.getElementById("video");
video.src = "audio.wav";
video.loop = true;
video.playbackRate = expectedPlaybackRate;
video.oncanplaythrough = function() {
video.oncanplaythrough = null;
is(video.paused, true, "video is not playing yet.");
is(video.playbackRate, expectedPlaybackRate,
"playbackRate is correct before clicking play button.");
// Click the play button
synthesizeMouse(video, playButtonCenterX, playButtonCenterY, { });
};
video.onplay = function() {
video.onplay = null;
is(video.paused, false, "video starts playing.");
is(video.playbackRate, expectedPlaybackRate,
"playbackRate is correct after clicking play button.");
video.pause();
SimpleTest.finish();
};
}
window.addEventListener("load", runTest);
SimpleTest.waitForExplicitFinish();
</script>
</pre>
</body>
</html>