1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/content/media/test/seek13.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,46 @@ 1.4 +function test_seek13(v, seekTime, is, ok, finish) { 1.5 +var completed = false; 1.6 + 1.7 +function startTest() { 1.8 + if (completed) 1.9 + return; 1.10 + ok(!v.seeking, "seeking should default to false"); 1.11 + v.currentTime = v.duration; 1.12 + is(v.currentTime, v.duration, "currentTime must report seek target immediately"); 1.13 + is(v.seeking, true, "seeking flag on start should be true"); 1.14 +} 1.15 + 1.16 +function seekStarted() { 1.17 + if (completed) 1.18 + return; 1.19 + //is(v.currentTime, v.duration, "seeking: currentTime must be duration"); 1.20 + ok(Math.abs(v.currentTime - v.duration) < 0.01, 1.21 + "seeking: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")"); 1.22 +} 1.23 + 1.24 +function seekEnded() { 1.25 + if (completed) 1.26 + return; 1.27 + //is(v.currentTime, v.duration, "seeked: currentTime must be duration"); 1.28 + ok(Math.abs(v.currentTime - v.duration) < 0.01, 1.29 + "seeked: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")"); 1.30 + is(v.seeking, false, "seeking flag on end should be false"); 1.31 +} 1.32 + 1.33 +function playbackEnded() { 1.34 + if (completed) 1.35 + return; 1.36 + completed = true; 1.37 + //is(v.currentTime, v.duration, "ended: currentTime must be duration"); 1.38 + ok(Math.abs(v.currentTime - v.duration) < 0.01, 1.39 + "ended: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")"); 1.40 + is(v.seeking, false, "seeking flag on end should be false"); 1.41 + is(v.ended, true, "ended must be true"); 1.42 + finish(); 1.43 +} 1.44 + 1.45 +v.addEventListener("loadedmetadata", startTest, false); 1.46 +v.addEventListener("seeking", seekStarted, false); 1.47 +v.addEventListener("seeked", seekEnded, false); 1.48 +v.addEventListener("ended", playbackEnded, false); 1.49 +}