tor-browser

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

test_playback_rate_playpause.html (1841B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <title>Test that the playbackRate property is not reset when resuming the playback</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 <pre id="test">
     11 <script class="testbody" type='application/javascript'>
     12 
     13 let manager = new MediaTestManager;
     14 
     15 function ontimeupdate(e) {
     16  var t = e.target;
     17  if (t.currentTime != 0.0) {
     18    info(t.token + " t.currentTime=" + t.currentTime +"\n");
     19    t.removeEventListener("timeupdate", ontimeupdate);
     20    t.pause();
     21    is(t.playbackRate, 0.5, "PlaybackRate should not have changed after pause.");
     22  } else {
     23    info(t.token + " t.currentTime == 0.0.\n");
     24  }
     25 }
     26 
     27 function onpaused(e) {
     28  var t = e.target;
     29  dump(t.token + " onpaused.\n");
     30  t.play();
     31  is(t.playbackRate, 0.5, "PlaybackRate should not have changed after resuming playback.");
     32  finish_test(t);
     33 }
     34 
     35 function finish_test(element) {
     36  dump(element.token + " finish_test.\n");
     37  removeNodeAndSource(element);
     38  manager.finished(element.token);
     39 }
     40 
     41 function startTest(test, token) {
     42  let elemType = /^audio/.test(test.type) ? "audio" : "video";
     43  let element = document.createElement(elemType);
     44  element.src = test.name;
     45  element.token = token;
     46  element.controls = true;
     47  element.playbackRate = 0.5;
     48  element.preload = "metadata";
     49  element.addEventListener("timeupdate", ontimeupdate);
     50  element.addEventListener("pause", onpaused);
     51  element.addEventListener("loadedmetadata", function() {
     52    dump(element.token + " loadedmetadata\n");
     53    element.play();
     54  });
     55  document.body.appendChild(element);
     56  manager.started(token);
     57 }
     58 
     59 manager.runTests(gPlayedTests, startTest);
     60 
     61 </script>
     62 </pre>
     63 <div id="elements">
     64 </div>
     65 </body>
     66 </html>