content/media/test/seek13.js

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

michael@0 1 function test_seek13(v, seekTime, is, ok, finish) {
michael@0 2 var completed = false;
michael@0 3
michael@0 4 function startTest() {
michael@0 5 if (completed)
michael@0 6 return;
michael@0 7 ok(!v.seeking, "seeking should default to false");
michael@0 8 v.currentTime = v.duration;
michael@0 9 is(v.currentTime, v.duration, "currentTime must report seek target immediately");
michael@0 10 is(v.seeking, true, "seeking flag on start should be true");
michael@0 11 }
michael@0 12
michael@0 13 function seekStarted() {
michael@0 14 if (completed)
michael@0 15 return;
michael@0 16 //is(v.currentTime, v.duration, "seeking: currentTime must be duration");
michael@0 17 ok(Math.abs(v.currentTime - v.duration) < 0.01,
michael@0 18 "seeking: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")");
michael@0 19 }
michael@0 20
michael@0 21 function seekEnded() {
michael@0 22 if (completed)
michael@0 23 return;
michael@0 24 //is(v.currentTime, v.duration, "seeked: currentTime must be duration");
michael@0 25 ok(Math.abs(v.currentTime - v.duration) < 0.01,
michael@0 26 "seeked: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")");
michael@0 27 is(v.seeking, false, "seeking flag on end should be false");
michael@0 28 }
michael@0 29
michael@0 30 function playbackEnded() {
michael@0 31 if (completed)
michael@0 32 return;
michael@0 33 completed = true;
michael@0 34 //is(v.currentTime, v.duration, "ended: currentTime must be duration");
michael@0 35 ok(Math.abs(v.currentTime - v.duration) < 0.01,
michael@0 36 "ended: currentTime (" + v.currentTime + ") must be duration (" + v.duration + ")");
michael@0 37 is(v.seeking, false, "seeking flag on end should be false");
michael@0 38 is(v.ended, true, "ended must be true");
michael@0 39 finish();
michael@0 40 }
michael@0 41
michael@0 42 v.addEventListener("loadedmetadata", startTest, false);
michael@0 43 v.addEventListener("seeking", seekStarted, false);
michael@0 44 v.addEventListener("seeked", seekEnded, false);
michael@0 45 v.addEventListener("ended", playbackEnded, false);
michael@0 46 }

mercurial