OLD | NEW |
1 <!doctype html> | 1 <!doctype html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <title>Adding a track to an inactive MediaStream</title> | 4 <title>Adding a track to an inactive MediaStream</title> |
5 <link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> | 5 <link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> |
6 <link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#
widl-MediaStream-addTrack-void-MediaStreamTrack-track"> | 6 <link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#
widl-MediaStream-addTrack-void-MediaStreamTrack-track"> |
7 <link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#
widl-MediaStreamTrack-stop-void"> | 7 <link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#
widl-MediaStreamTrack-stop-void"> |
8 </head> | 8 </head> |
9 <body> | 9 <body> |
10 <p class="instructions" style="display:none">When prompted, accept to share your
audio stream, then | 10 <p class="instructions" style="display:none">When prompted, accept to share your
audio stream, then |
11 your video stream.</p> | 11 your video stream.</p> |
12 <h1 class="instructions" style="display:none">Description</h1> | 12 <h1 class="instructions" style="display:none">Description</h1> |
13 <p class="instructions" style="display:none">This test checks that adding a trac
k to an inactive | 13 <p class="instructions" style="display:none">This test checks that adding a trac
k to an inactive |
14 MediaStream is allowed.</p> | 14 MediaStream is allowed.</p> |
15 | 15 |
16 <div id='log'></div> | 16 <div id='log'></div> |
17 <script src=../../../../../resources/testharness.js></script> | 17 <script src=../../../resources/testharness.js></script> |
18 <script src=../../../../../resources/testharnessreport.js></script> | 18 <script src=../../../resources/testharnessreport.js></script> |
19 <script src="../../../../../resources/vendor-prefix.js" data-prefixed-objects='[
{"ancestors":["navigator"], "name":"getUserMedia"}]'></script> | 19 <script src="../../../resources/vendor-prefix.js" data-prefixed-objects='[{"ance
stors":["navigator"], "name":"getUserMedia"}]'></script> |
20 <script> | 20 <script> |
21 var t = async_test("Tests that adding a track to an inactive MediaStream is allo
wed", {timeout:20000}); | 21 var t = async_test("Tests that adding a track to an inactive MediaStream is allo
wed", {timeout:20000}); |
22 t.step(function () { | 22 t.step(function () { |
23 var audio, video; | 23 var audio, video; |
24 | 24 |
25 navigator.getUserMedia({audio:true}, gotAudio, function() {}); | 25 navigator.getUserMedia({audio:true}, gotAudio, function() {}); |
26 function gotAudio(stream) { | 26 function gotAudio(stream) { |
27 audio = stream; | 27 audio = stream; |
28 navigator.getUserMedia({video:true}, gotVideo, function() {}); | 28 navigator.getUserMedia({video:true}, gotVideo, function() {}); |
29 } | 29 } |
30 | 30 |
31 function gotVideo(stream) { | 31 function gotVideo(stream) { |
32 video = stream; | 32 video = stream; |
33 t.step(function () { | 33 t.step(function () { |
34 audio.getAudioTracks()[0].stop(); | 34 audio.getAudioTracks()[0].stop(); |
35 assert_false(audio.active, "audio stream is inactive after stopping its o
nly audio track"); | 35 assert_false(audio.active, "audio stream is inactive after stopping its o
nly audio track"); |
36 assert_true(video.active, "video stream is active"); | 36 assert_true(video.active, "video stream is active"); |
37 audio.addTrack(video.getVideoTracks()[0]); | 37 audio.addTrack(video.getVideoTracks()[0]); |
38 audio.removeTrack(audio.getAudioTracks()[0]); | 38 audio.removeTrack(audio.getAudioTracks()[0]); |
39 }); | 39 }); |
40 t.done(); | 40 t.done(); |
41 } | 41 } |
42 }); | 42 }); |
43 </script> | 43 </script> |
44 </body> | 44 </body> |
45 </html> | 45 </html> |
OLD | NEW |