tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

seek_support.js (1627B)


      1 // This file expects manifest.js to be included in the same scope.
      2 /* import-globals-from manifest.js */
      3 // This file expects SEEK_TEST_NUMBER to be defined by the test.
      4 /* global SEEK_TEST_NUMBER */
      5 var manager = new MediaTestManager();
      6 
      7 function createTestArray() {
      8  var tests = [];
      9  var tmpVid = document.createElement("video");
     10 
     11  for (var testNum = 0; testNum < gSeekTests.length; testNum++) {
     12    var test = gSeekTests[testNum];
     13    if (!tmpVid.canPlayType(test.type)) {
     14      continue;
     15    }
     16 
     17    var t = {};
     18    t.name = test.name;
     19    t.type = test.type;
     20    t.duration = test.duration;
     21    t.number = SEEK_TEST_NUMBER;
     22    tests.push(t);
     23  }
     24  return tests;
     25 }
     26 
     27 function startTest(test, token) {
     28  var video = document.createElement("video");
     29  video.token = token += "-seek" + test.number + ".js";
     30  manager.started(video.token);
     31  video.src = test.name;
     32  video.preload = "metadata";
     33  document.body.appendChild(video);
     34  var name = test.name + " seek test " + test.number;
     35  var localIs = (function (n) {
     36    return function (a, b, msg) {
     37      is(a, b, n + ": " + msg);
     38    };
     39  })(name);
     40  var localOk = (function (n) {
     41    return function (a, msg) {
     42      ok(a, n + ": " + msg);
     43    };
     44  })(name);
     45  var localFinish = (function (v, m) {
     46    return function () {
     47      v.onerror = null;
     48      removeNodeAndSource(v);
     49      dump("SEEK-TEST: Finished " + name + " token: " + v.token + "\n");
     50      m.finished(v.token);
     51    };
     52  })(video, manager);
     53  dump("SEEK-TEST: Started " + name + "\n");
     54  window["test_seek" + test.number](
     55    video,
     56    test.duration / 2,
     57    localIs,
     58    localOk,
     59    localFinish
     60  );
     61 }