diff --git a/dom/media/tests/mochitest/test_peerConnection_addSecondVideoStream.html b/dom/media/tests/mochitest/test_peerConnection_addSecondVideoStream.html index ebe7d46b1725..245cde5a064d 100644 --- a/dom/media/tests/mochitest/test_peerConnection_addSecondVideoStream.html +++ b/dom/media/tests/mochitest/test_peerConnection_addSecondVideoStream.html @@ -2,6 +2,7 @@
+@@ -11,21 +12,30 @@ title: "Renegotiation: add second video stream" }); - var test; runNetworkTest(function (options) { - test = new PeerConnectionTest(options); + const test = new PeerConnectionTest(options); addRenegotiation(test.chain, [ function PC_LOCAL_ADD_SECOND_STREAM(test) { test.setMediaConstraints([{video: true}, {video: true}], [{video: true}]); - return test.pcLocal.getAllUserMedia([{video: true}]); + // Use fake:true here since the native fake device on linux doesn't + // change color as needed by checkVideoPlaying() below. + return test.pcLocal.getAllUserMedia([{video: true, fake: true}]); + }, + ], + [ + function PC_REMOTE_CHECK_VIDEO_FLOW(test) { + const h = new VideoStreamHelper(); + is(test.pcRemote.remoteMediaElements.length, 2, + "Should have two remote media elements after renegotiation"); + return Promise.all(test.pcRemote.remoteMediaElements.map(video => + h.checkVideoPlaying(video, 10, 10, 16))); }, ] ); - // TODO(bug 1093835): figure out how to verify if media flows through the new stream - test.setMediaConstraints([{video: true}], [{video: true}]); + test.setMediaConstraints([{video: true, fake: true}], [{video: true}]); test.run(); });