Chromium Code Reviews| Index: webrtc/pc/peerconnectioninterface_unittest.cc |
| diff --git a/webrtc/pc/peerconnectioninterface_unittest.cc b/webrtc/pc/peerconnectioninterface_unittest.cc |
| index c10324a94b7a5772733cd473a939226c074981d2..a0ba9ea25fff16909b0262672d07349ffa1e3a49 100644 |
| --- a/webrtc/pc/peerconnectioninterface_unittest.cc |
| +++ b/webrtc/pc/peerconnectioninterface_unittest.cc |
| @@ -3702,3 +3702,32 @@ TEST(RTCConfigurationTest, ComparisonOperators) { |
| PeerConnectionInterface::RTCConfigurationType::kAggressive); |
| EXPECT_NE(a, h); |
| } |
| + |
|
Taylor Brandstetter
2017/07/10 21:40:30
nit: Can you add a brief comment explaining this t
korniltsev
2017/07/12 06:51:30
Done.
|
| +TEST_F(PeerConnectionInterfaceTest, MediaStreamAddTrackRemoveTrackRenegotiate) { |
| + CreatePeerConnectionWithoutDtls(); |
| + rtc::scoped_refptr<MediaStreamInterface> stream( |
| + pc_factory_->CreateLocalMediaStream(kStreamLabel1)); |
| + pc_->AddStream(stream); |
| + rtc::scoped_refptr<AudioTrackInterface> audio_track( |
| + pc_factory_->CreateAudioTrack("audio_track", nullptr)); |
| + rtc::scoped_refptr<VideoTrackInterface> video_track( |
| + pc_factory_->CreateVideoTrack( |
| + "video_track", pc_factory_->CreateVideoSource( |
| + std::unique_ptr<cricket::VideoCapturer>( |
| + new cricket::FakeVideoCapturer())))); |
| + stream->AddTrack(audio_track); |
| + EXPECT_TRUE_WAIT(observer_.renegotiation_needed_, kTimeout); |
| + observer_.renegotiation_needed_ = false; |
| + |
| + stream->AddTrack(video_track); |
| + EXPECT_TRUE_WAIT(observer_.renegotiation_needed_, kTimeout); |
| + observer_.renegotiation_needed_ = false; |
| + |
| + stream->RemoveTrack(audio_track); |
| + EXPECT_TRUE_WAIT(observer_.renegotiation_needed_, kTimeout); |
| + observer_.renegotiation_needed_ = false; |
| + |
| + stream->RemoveTrack(video_track); |
| + EXPECT_TRUE_WAIT(observer_.renegotiation_needed_, kTimeout); |
| + observer_.renegotiation_needed_ = false; |
| +} |