tor-browser

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

test_getUserMedia_loadedmetadata.html (1161B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <head>
      4  <script type="application/javascript" src="mediaStreamPlayback.js"></script>
      5 </head>
      6 <body>
      7 <pre id="test">
      8 <script type="application/javascript">
      9  createHTML({
     10    title: "getUserMedia in media element should have video dimensions on loadedmetadata",
     11    bug: "1240478"
     12  });
     13  /**
     14   * Tests that assigning a stream to a media element results in the
     15   * "loadedmetadata" event without having to play() the media element.
     16   *
     17   * Also makes sure that the video size has been set on "loadedmetadata".
     18   */
     19  runTest(function () {
     20    var v = document.createElement("video");
     21    document.body.appendChild(v);
     22    v.preload = "metadata";
     23 
     24    var constraints = {video: true, audio: true};
     25    return getUserMedia(constraints).then(stream => new Promise(resolve => {
     26      v.srcObject = stream;
     27      v.onloadedmetadata = () => {
     28        isnot(v.videoWidth, 0, "videoWidth shall be set on 'loadedmetadata'");
     29        isnot(v.videoHeight, 0, "videoHeight shall be set on 'loadedmetadata'");
     30        resolve();
     31      };
     32    })
     33    .then(() => stream.getTracks().forEach(t => t.stop())));
     34  });
     35 
     36 </script>
     37 </pre>
     38 </body>
     39 </html>