michael@0: function test_seek12(v, seekTime, is, ok, finish) { michael@0: var completed = false; michael@0: michael@0: function startTest() { michael@0: if (completed) michael@0: return; michael@0: ok(!v.seeking, "seeking should default to false"); michael@0: v.currentTime = seekTime; michael@0: is(v.currentTime, seekTime, "currentTime must report seek target immediately"); michael@0: is(v.seeking, true, "seeking flag on start should be true"); michael@0: } michael@0: michael@0: function seekStarted() { michael@0: if (completed) michael@0: return; michael@0: //is(v.currentTime, seekTime, "seeking: currentTime must be seekTime"); michael@0: ok(Math.abs(v.currentTime - seekTime) < 0.01, "seeking: currentTime must be seekTime"); michael@0: } michael@0: michael@0: function seekEnded() { michael@0: if (completed) michael@0: return; michael@0: completed = true; michael@0: //is(v.currentTime, seekTime, "seeked: currentTime must be seekTime"); michael@0: ok(Math.abs(v.currentTime - seekTime) < 0.01, "seeked: currentTime must be seekTime"); michael@0: is(v.seeking, false, "seeking flag on end should be false"); michael@0: finish(); michael@0: } michael@0: michael@0: v.addEventListener("loadedmetadata", startTest, false); michael@0: v.addEventListener("seeking", seekStarted, false); michael@0: v.addEventListener("seeked", seekEnded, false); michael@0: }