diff -r 000000000000 -r 6474c204b198 content/media/test/seek3.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/content/media/test/seek3.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,44 @@ +function test_seek3(v, seekTime, is, ok, finish) { + +// Test seeking works if current time is set but video is not played. +var startPassed = false; +var completed = false; +var gotTimeupdate = false; + +function startTest() { + if (completed) + return; + + v.currentTime=seekTime; +} + +function timeupdate() { + gotTimeupdate = true; + v.removeEventListener("timeupdate", timeupdate, false); +} + +function seekStarted() { + if (completed) + return; + + ok(v.currentTime >= seekTime - 0.1, "Video currentTime should be around " + seekTime + ": " + v.currentTime); + v.addEventListener("timeupdate", timeupdate, false); + startPassed = true; +} + +function seekEnded() { + if (completed) + return; + + var t = v.currentTime; + ok(Math.abs(t - seekTime) <= 0.1, "Video currentTime should be around " + seekTime + ": " + t); + ok(gotTimeupdate, "Should have got timeupdate between seeking and seekended"); + completed = true; + finish(); +} + +v.addEventListener("loadedmetadata", startTest, false); +v.addEventListener("seeking", seekStarted, false); +v.addEventListener("seeked", seekEnded, false); + +}