3af0ea5ba1bac7bd18e845211e0a8eeb26f43aa5
[gecko.git] / test_getUserMedia_loadedmetadata.html
blob3af0ea5ba1bac7bd18e845211e0a8eeb26f43aa5
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.
17 * Also makes sure that the video size has been set on "loadedmetadata".
19 runTest(function () {
20 var v = document.createElement("video");
21 v.preload = "metadata";
23 var constraints = {video: true, audio: true};
24 return getUserMedia(constraints).then(stream => new Promise(resolve => {
25 v.srcObject = stream;
26 v.onloadedmetadata = resolve;
27 })).then(() => {
28 isnot(v.videoWidth, 0, "videoWidth shall be set on 'loadedmetadata'");
29 isnot(v.videoHeight, 0, "videoHeight shall be set on 'loadedmetadata'");
30 });
31 });
33 </script>
34 </pre>
35 </body>
36 </html>