| OLD | NEW |
| 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | 1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <link rel="stylesheet" href="../js/resources/js-test-style.css"> |
| 4 <script src="../js/resources/js-test-pre.js"></script> | 5 <script src="../js/resources/js-test-pre.js"></script> |
| 5 </head> | 6 </head> |
| 6 <body> | 7 <body> |
| 8 <p id="description"></p> |
| 9 <div id="console"></div> |
| 7 <script> | 10 <script> |
| 8 description("Tests RTCPeerConnection onnegotiationneeded."); | 11 description("Tests MediaStreamTrack::getSourceInfos."); |
| 9 | 12 |
| 10 var stream = null; | 13 var sources = null; |
| 11 var pc = null; | 14 var previousId; |
| 12 | 15 |
| 13 function error() { | 16 function error() { |
| 14 testFailed('Stream generation failed.'); | 17 testFailed('Stream generation failed.'); |
| 15 finishJSTest(); | 18 finishJSTest(); |
| 16 } | 19 } |
| 17 | 20 |
| 18 function getUserMedia(dictionary, callback) { | 21 function getUserMedia(constraints, callback) { |
| 19 try { | 22 try { |
| 20 navigator.webkitGetUserMedia(dictionary, callback, error); | 23 navigator.webkitGetUserMedia(constraints, callback, error); |
| 21 } catch (e) { | 24 } catch (e) { |
| 22 testFailed('webkitGetUserMedia threw exception :' + e); | 25 testFailed('webkitGetUserMedia threw exception :' + e); |
| 23 finishJSTest(); | 26 finishJSTest(); |
| 24 } | 27 } |
| 25 } | 28 } |
| 26 | 29 |
| 27 function onNegotiationNeeded(event) { | 30 function gotStream(s) { |
| 28 testPassed('onNegotiationNeeded was called.'); | 31 shouldNotThrow('sources = MediaStreamTrack.getSourceInfos();'); |
| 29 | 32 shouldBeTrue('sources.length > 0'); |
| 33 shouldBeTrue('sources[0].id === previousId'); |
| 34 shouldBeTrue('sources[0].label.length > 0'); |
| 30 finishJSTest(); | 35 finishJSTest(); |
| 31 } | 36 } |
| 32 | 37 |
| 33 function gotStream(s) { | 38 shouldNotThrow('sources = MediaStreamTrack.getSourceInfos();'); |
| 34 testPassed('Got a stream.'); | 39 shouldBeTrue('sources.length > 0'); |
| 35 stream = s; | 40 previousId = sources[0].id; |
| 36 | |
| 37 pc = new webkitRTCPeerConnection(null, null); | |
| 38 pc.onnegotiationneeded = onNegotiationNeeded; | |
| 39 | |
| 40 pc.addStream(stream); | |
| 41 } | |
| 42 | 41 |
| 43 getUserMedia({audio:true, video:true}, gotStream); | 42 getUserMedia({audio:true, video:true}, gotStream); |
| 44 | 43 |
| 45 window.jsTestIsAsync = true; | 44 window.jsTestIsAsync = true; |
| 46 window.successfullyParsed = true; | 45 window.successfullyParsed = true; |
| 47 </script> | 46 </script> |
| 48 <script src="../js/resources/js-test-post.js"></script> | 47 <script src="../js/resources/js-test-post.js"></script> |
| 49 </body> | 48 </body> |
| 50 </html> | 49 </html> |
| OLD | NEW |