gecko/content/media/test/seek2.js
Robert O'Callahan 809d74757c Bug 502211. Unify seek tests into a single backend-independent test. r=doublec
--HG--
rename : content/media/test/test_seek1.html => content/media/test/seek1.js
rename : content/media/test/test_seek3.html => content/media/test/seek2.js
rename : content/media/test/test_seek4.html => content/media/test/seek3.js
rename : content/media/test/test_seek5.html => content/media/test/seek4.js
rename : content/media/test/test_seek6.html => content/media/test/seek5.js
rename : content/media/test/test_seek7.html => content/media/test/seek6.js
rename : content/media/test/test_seek8.html => content/media/test/seek7.js
rename : content/media/test/test_seek9.html => content/media/test/seek8.js
2009-07-10 14:03:02 +12:00

53 lines
1.0 KiB
JavaScript

function test_seek2(v, seekTime, is, ok, finish) {
// Test seeking works if current time is set before video is
// playing.
var startPassed = false;
var endPassed = false;
var completed = false;
function startTest() {
if (completed)
return false;
v.currentTime=seekTime;
v.play();
return false;
}
function seekStarted() {
if (completed)
return false;
startPassed = true;
return false;
}
function seekEnded() {
if (completed)
return false;
endPassed = true;
return false;
}
function playbackEnded() {
if (completed)
return false
completed = true;
ok(startPassed, "send seeking event");
ok(endPassed, "send seeked event");
ok(v.ended, "Checking playback has ended");
ok(Math.abs(v.currentTime - v.duration) <= 0.1, "Checking currentTime at end: " + v.currentTime);
finish();
return false;
}
v.addEventListener("ended", playbackEnded, false);
v.addEventListener("loadedmetadata", startTest, false);
v.addEventListener("seeking", seekStarted, false);
v.addEventListener("seeked", seekEnded, false);
}