aboutsummaryrefslogtreecommitdiff
path: root/media/engine/webrtc_voice_engine_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'media/engine/webrtc_voice_engine_unittest.cc')
-rw-r--r--media/engine/webrtc_voice_engine_unittest.cc19
1 files changed, 15 insertions, 4 deletions
diff --git a/media/engine/webrtc_voice_engine_unittest.cc b/media/engine/webrtc_voice_engine_unittest.cc
index 3286837d81..c570b1a03a 100644
--- a/media/engine/webrtc_voice_engine_unittest.cc
+++ b/media/engine/webrtc_voice_engine_unittest.cc
@@ -2845,7 +2845,7 @@ TEST_P(WebRtcVoiceEngineTestFake, AddRecvStreamAfterUnsignaled_NoRecreate) {
EXPECT_EQ(audio_receive_stream_id, streams.front()->id());
}
-TEST_P(WebRtcVoiceEngineTestFake, AddRecvStreamAfterUnsignaled_Recreate) {
+TEST_P(WebRtcVoiceEngineTestFake, AddRecvStreamAfterUnsignaled_Updates) {
EXPECT_TRUE(SetupChannel());
// Spawn unsignaled stream with SSRC=1.
@@ -2854,17 +2854,26 @@ TEST_P(WebRtcVoiceEngineTestFake, AddRecvStreamAfterUnsignaled_Recreate) {
EXPECT_TRUE(
GetRecvStream(1).VerifyLastPacket(kPcmuFrame, sizeof(kPcmuFrame)));
- // Verify that the underlying stream object in Call *is* recreated when a
+ // Verify that the underlying stream object in Call gets updated when a
// stream with SSRC=1 is added, and which has changed stream parameters.
const auto& streams = call_.GetAudioReceiveStreams();
EXPECT_EQ(1u, streams.size());
+ // The sync_group id should be empty.
+ EXPECT_TRUE(streams.front()->GetConfig().sync_group.empty());
+
+ const std::string new_stream_id("stream_id");
int audio_receive_stream_id = streams.front()->id();
cricket::StreamParams stream_params;
stream_params.ssrcs.push_back(1);
- stream_params.set_stream_ids({"stream_id"});
+ stream_params.set_stream_ids({new_stream_id});
+
EXPECT_TRUE(channel_->AddRecvStream(stream_params));
EXPECT_EQ(1u, streams.size());
- EXPECT_NE(audio_receive_stream_id, streams.front()->id());
+ // The audio receive stream should not have been recreated.
+ EXPECT_EQ(audio_receive_stream_id, streams.front()->id());
+
+ // The sync_group id should now match with the new stream params.
+ EXPECT_EQ(new_stream_id, streams.front()->GetConfig().sync_group);
}
// Test that AddRecvStream creates new stream.
@@ -3203,6 +3212,7 @@ TEST_P(WebRtcVoiceEngineTestFake, TestSetDscpOptions) {
channel->SetInterface(&network_interface);
// Default value when DSCP is disabled should be DSCP_DEFAULT.
EXPECT_EQ(rtc::DSCP_DEFAULT, network_interface.dscp());
+ channel->SetInterface(nullptr);
config.enable_dscp = true;
channel.reset(static_cast<cricket::WebRtcVoiceMediaChannel*>(
@@ -3229,6 +3239,7 @@ TEST_P(WebRtcVoiceEngineTestFake, TestSetDscpOptions) {
const uint8_t kData[10] = {0};
EXPECT_TRUE(channel->SendRtcp(kData, sizeof(kData)));
EXPECT_EQ(rtc::DSCP_CS1, network_interface.options().dscp);
+ channel->SetInterface(nullptr);
// Verify that setting the option to false resets the
// DiffServCodePoint.