content/media/test/seek11.js

Fri, 16 Jan 2015 04:50:19 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 04:50:19 +0100
branch
TOR_BUG_9701
changeset 13
44a2da4a2ab2
permissions
-rw-r--r--

Replace accessor implementation with direct member state manipulation, by
request https://trac.torproject.org/projects/tor/ticket/9701#comment:32

     1 function test_seek11(v, seekTime, is, ok, finish) {
     3 // Test for bug 476973, multiple seeks to the same position shouldn't cause problems.
     5 var seekedNonZero = false;
     6 var completed = false;
     7 var target = 0;
     9 function startTest() {
    10   if (completed)
    11     return;
    12   target = v.duration / 2;
    13   v.currentTime = target;
    14   v.currentTime = target;
    15   v._seekTarget = target;
    16 }
    18 function startSeeking() {
    19   ok(v.currentTime >= v._seekTarget - 0.1,
    20      "Video currentTime should be around " + v._seekTarget + ": " + v.currentTime);
    21   if (!seekedNonZero) {
    22     v.currentTime = target;
    23     v._seekTarget = target;
    24     seekedNonZero = true;
    25   }
    26 }
    28 function seekEnded() {
    29   if (completed)
    30     return;
    32   if (v.currentTime > 0) {
    33     ok(v.currentTime > target - 0.1 && v.currentTime < target + 0.1,
    34        "Seek to wrong destination " + v.currentTime);
    35     v.currentTime = 0.0;
    36     v._seekTarget = 0.0;
    37   } else {
    38     ok(seekedNonZero, "Successfully seeked to nonzero");
    39     ok(true, "Seek back to zero was successful");
    40     completed = true;
    41     finish();
    42   }
    43 }
    45 v.addEventListener("loadedmetadata", startTest, false);
    46 v.addEventListener("seeking", startSeeking, false);
    47 v.addEventListener("seeked", seekEnded, false);
    49 }

mercurial