tor-browser

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

test_bug465498.html (2185B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <title>Media test: Bug 465498 - Seeking after playback ended</title>
      5  <script src="/tests/SimpleTest/SimpleTest.js"></script>
      6  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
      7  <script type="text/javascript" src="manifest.js"></script>
      8 </head>
      9 <body>
     10 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=465498">Mozilla Bug 465498</a>
     11 <pre id="test">
     12 <script class="testbody" type="text/javascript">
     13 
     14 var manager = new MediaTestManager;
     15 
     16 function startTest(e) {
     17  var v = e.target;
     18  info(v._name + " loadedmetadata");
     19  e.target.play();
     20 }
     21 
     22 function playbackEnded(e) {
     23  var v = e.target;
     24  info(v._name + " ended");
     25  if (v._finished)
     26    return;
     27  ok(v.currentTime >= v.duration - 0.1 && v.currentTime <= v.duration + 0.1,
     28     "Checking currentTime at end: " + v.currentTime + " for " + v._name);
     29  ok(v.ended, "Checking playback has ended for " + v._name);
     30  v.pause();
     31  v.currentTime = 0;
     32  ok(!v.ended, "Checking ended is no longer true for " + v._name);
     33  v._seeked = true;
     34 }
     35 
     36 function seekEnded(e) {
     37  var v = e.target;
     38  info(v._name + " seeked");
     39  if (v._finished)
     40    return;
     41  ok(v.currentTime == 0, "Checking currentTime after seek: " +
     42     v.currentTime  + " for " + v._name);
     43  ok(!v.ended, "Checking ended is false for " + v._name);
     44  v._finished = true;
     45  removeNodeAndSource(v);
     46  manager.finished(v.token);
     47 }
     48 
     49 function seeking(e) {
     50  var v = e.target;
     51  info(v._name + " seeking");
     52 }
     53 
     54 function initTest(test, token) {
     55  var type = getMajorMimeType(test.type);
     56  var v = document.createElement(type);
     57  if (!v.canPlayType(test.type))
     58    return;
     59  v.preload = "metadata";
     60  v.token = token;
     61  manager.started(token);
     62  v._name = test.name;
     63 
     64  var s = document.createElement("source");
     65  s.type = test.type;
     66  s.src = test.name;
     67  v.appendChild(s);
     68 
     69  v._seeked = false;
     70  v._finished = false;
     71  v.addEventListener("loadedmetadata", startTest);
     72  v.addEventListener("ended", playbackEnded);
     73  v.addEventListener("seeked", seekEnded);
     74  v.addEventListener("seeking", seeking);
     75  document.body.appendChild(v);
     76 }
     77 
     78 manager.runTests(gSmallTests, initTest);
     79 
     80 </script>
     81 </pre>
     82 </body>
     83 </html>