tor-browser

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

test_play_events_2.html (1381B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <title>Media test: play() method via DOM 0 handlers</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 
     12 <script>
     13 var manager = new MediaTestManager;
     14 
     15 var tokens = {
     16  0:                ["play"],
     17  "play":           ["canplay"],
     18  "canplay":        ["playing"],
     19  "playing":        ["canplay", "canplaythrough"],
     20  "canplaythrough": ["canplay", "canplaythrough"]
     21 };
     22 
     23 function gotPlayEvent(event) {
     24  var v = event.target;
     25  ok(tokens[v._state].includes(event.type),
     26     "Check expected event got " + event.type + " at " + v._state + " for " + v.src);
     27  v._state = event.type;
     28 }
     29 
     30 function ended(event) {
     31  var v = event.target;
     32  v._finished = true;
     33  removeNodeAndSource(v);
     34  manager.finished(v.token);
     35 }
     36 
     37 function startTest(test, token) {
     38  var v = document.createElement('video');
     39  v.token = token;
     40  manager.started(token);
     41  v._state = 0;
     42  v._finished = false;
     43 
     44  ["play", "canplay", "playing", "canplaythrough"].forEach(function (e) {
     45    v["on" + e] = gotPlayEvent;
     46  });
     47 
     48  v.onended = ended;
     49 
     50  v.src = test.name;
     51  document.body.appendChild(v); // Causes load.
     52  v.play();
     53 }
     54 
     55 manager.runTests(gSmallTests, startTest);
     56 
     57 </script>
     58 </pre>
     59 </body>
     60 </html>