Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(624)

Side by Side Diff: webrtc/pc/channelmanager_unittest.cc

Issue 1972493002: Do not create a temporary transport channel when using max-bundle (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Code review feedback Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2008 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2008 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 // Setting the network or worker thread while initialized should fail. 91 // Setting the network or worker thread while initialized should fail.
92 EXPECT_FALSE(cm_->set_network_thread(rtc::Thread::Current())); 92 EXPECT_FALSE(cm_->set_network_thread(rtc::Thread::Current()));
93 EXPECT_FALSE(cm_->set_worker_thread(rtc::Thread::Current())); 93 EXPECT_FALSE(cm_->set_worker_thread(rtc::Thread::Current()));
94 cm_->Terminate(); 94 cm_->Terminate();
95 EXPECT_FALSE(cm_->initialized()); 95 EXPECT_FALSE(cm_->initialized());
96 } 96 }
97 97
98 // Test that we can create and destroy a voice and video channel. 98 // Test that we can create and destroy a voice and video channel.
99 TEST_F(ChannelManagerTest, CreateDestroyChannels) { 99 TEST_F(ChannelManagerTest, CreateDestroyChannels) {
100 EXPECT_TRUE(cm_->Init()); 100 EXPECT_TRUE(cm_->Init());
101 cricket::VoiceChannel* voice_channel = 101 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel(
102 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, 102 &fake_mc_, transport_controller_, cricket::CN_AUDIO, nullptr, false,
103 cricket::CN_AUDIO, false, AudioOptions()); 103 AudioOptions());
104 EXPECT_TRUE(voice_channel != nullptr); 104 EXPECT_TRUE(voice_channel != nullptr);
105 cricket::VideoChannel* video_channel = 105 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel(
106 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, 106 &fake_mc_, transport_controller_, cricket::CN_VIDEO, nullptr, false,
107 cricket::CN_VIDEO, false, VideoOptions()); 107 VideoOptions());
108 EXPECT_TRUE(video_channel != nullptr); 108 EXPECT_TRUE(video_channel != nullptr);
109 cricket::DataChannel* data_channel = cm_->CreateDataChannel( 109 cricket::DataChannel* data_channel =
110 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); 110 cm_->CreateDataChannel(transport_controller_, cricket::CN_DATA, nullptr,
111 false, cricket::DCT_RTP);
111 EXPECT_TRUE(data_channel != nullptr); 112 EXPECT_TRUE(data_channel != nullptr);
112 cm_->DestroyVideoChannel(video_channel); 113 cm_->DestroyVideoChannel(video_channel);
113 cm_->DestroyVoiceChannel(voice_channel); 114 cm_->DestroyVoiceChannel(voice_channel);
114 cm_->DestroyDataChannel(data_channel); 115 cm_->DestroyDataChannel(data_channel);
115 cm_->Terminate(); 116 cm_->Terminate();
116 } 117 }
117 118
118 // Test that we can create and destroy a voice and video channel with a worker. 119 // Test that we can create and destroy a voice and video channel with a worker.
119 TEST_F(ChannelManagerTest, CreateDestroyChannelsOnThread) { 120 TEST_F(ChannelManagerTest, CreateDestroyChannelsOnThread) {
120 network_.Start(); 121 network_.Start();
121 worker_.Start(); 122 worker_.Start();
122 EXPECT_TRUE(cm_->set_worker_thread(&worker_)); 123 EXPECT_TRUE(cm_->set_worker_thread(&worker_));
123 EXPECT_TRUE(cm_->set_network_thread(&network_)); 124 EXPECT_TRUE(cm_->set_network_thread(&network_));
124 EXPECT_TRUE(cm_->Init()); 125 EXPECT_TRUE(cm_->Init());
125 delete transport_controller_; 126 delete transport_controller_;
126 transport_controller_ = 127 transport_controller_ =
127 new cricket::FakeTransportController(&network_, ICEROLE_CONTROLLING); 128 new cricket::FakeTransportController(&network_, ICEROLE_CONTROLLING);
128 cricket::VoiceChannel* voice_channel = 129 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel(
129 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, 130 &fake_mc_, transport_controller_, cricket::CN_AUDIO, nullptr, false,
130 cricket::CN_AUDIO, false, AudioOptions()); 131 AudioOptions());
131 EXPECT_TRUE(voice_channel != nullptr); 132 EXPECT_TRUE(voice_channel != nullptr);
132 cricket::VideoChannel* video_channel = 133 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel(
133 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, 134 &fake_mc_, transport_controller_, cricket::CN_VIDEO, nullptr, false,
134 cricket::CN_VIDEO, false, VideoOptions()); 135 VideoOptions());
135 EXPECT_TRUE(video_channel != nullptr); 136 EXPECT_TRUE(video_channel != nullptr);
136 cricket::DataChannel* data_channel = cm_->CreateDataChannel( 137 cricket::DataChannel* data_channel =
137 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); 138 cm_->CreateDataChannel(transport_controller_, cricket::CN_DATA, nullptr,
139 false, cricket::DCT_RTP);
138 EXPECT_TRUE(data_channel != nullptr); 140 EXPECT_TRUE(data_channel != nullptr);
139 cm_->DestroyVideoChannel(video_channel); 141 cm_->DestroyVideoChannel(video_channel);
140 cm_->DestroyVoiceChannel(voice_channel); 142 cm_->DestroyVoiceChannel(voice_channel);
141 cm_->DestroyDataChannel(data_channel); 143 cm_->DestroyDataChannel(data_channel);
142 cm_->Terminate(); 144 cm_->Terminate();
143 } 145 }
144 146
145 // Test that we fail to create a voice/video channel if the session is unable 147 // Test that we fail to create a voice/video channel if the session is unable
146 // to create a cricket::TransportChannel 148 // to create a cricket::TransportChannel
147 TEST_F(ChannelManagerTest, NoTransportChannelTest) { 149 TEST_F(ChannelManagerTest, NoTransportChannelTest) {
148 EXPECT_TRUE(cm_->Init()); 150 EXPECT_TRUE(cm_->Init());
149 transport_controller_->set_fail_channel_creation(true); 151 transport_controller_->set_fail_channel_creation(true);
150 // The test is useless unless the session does not fail creating 152 // The test is useless unless the session does not fail creating
151 // cricket::TransportChannel. 153 // cricket::TransportChannel.
152 ASSERT_TRUE(transport_controller_->CreateTransportChannel_n( 154 ASSERT_TRUE(transport_controller_->CreateTransportChannel_n(
153 "audio", cricket::ICE_CANDIDATE_COMPONENT_RTP) == nullptr); 155 "audio", cricket::ICE_CANDIDATE_COMPONENT_RTP) == nullptr);
154 156
155 cricket::VoiceChannel* voice_channel = 157 cricket::VoiceChannel* voice_channel = cm_->CreateVoiceChannel(
156 cm_->CreateVoiceChannel(&fake_mc_, transport_controller_, 158 &fake_mc_, transport_controller_, cricket::CN_AUDIO, nullptr, false,
157 cricket::CN_AUDIO, false, AudioOptions()); 159 AudioOptions());
158 EXPECT_TRUE(voice_channel == nullptr); 160 EXPECT_TRUE(voice_channel == nullptr);
159 cricket::VideoChannel* video_channel = 161 cricket::VideoChannel* video_channel = cm_->CreateVideoChannel(
160 cm_->CreateVideoChannel(&fake_mc_, transport_controller_, 162 &fake_mc_, transport_controller_, cricket::CN_VIDEO, nullptr, false,
161 cricket::CN_VIDEO, false, VideoOptions()); 163 VideoOptions());
162 EXPECT_TRUE(video_channel == nullptr); 164 EXPECT_TRUE(video_channel == nullptr);
163 cricket::DataChannel* data_channel = cm_->CreateDataChannel( 165 cricket::DataChannel* data_channel =
164 transport_controller_, cricket::CN_DATA, false, cricket::DCT_RTP); 166 cm_->CreateDataChannel(transport_controller_, cricket::CN_DATA, nullptr,
167 false, cricket::DCT_RTP);
165 EXPECT_TRUE(data_channel == nullptr); 168 EXPECT_TRUE(data_channel == nullptr);
166 cm_->Terminate(); 169 cm_->Terminate();
167 } 170 }
168 171
169 TEST_F(ChannelManagerTest, GetSetOutputVolumeBeforeInit) { 172 TEST_F(ChannelManagerTest, GetSetOutputVolumeBeforeInit) {
170 int level; 173 int level;
171 // Before init, SetOutputVolume() remembers the volume but does not change the 174 // Before init, SetOutputVolume() remembers the volume but does not change the
172 // volume of the engine. GetOutputVolume() should fail. 175 // volume of the engine. GetOutputVolume() should fail.
173 EXPECT_EQ(-1, fme_->output_volume()); 176 EXPECT_EQ(-1, fme_->output_volume());
174 EXPECT_FALSE(cm_->GetOutputVolume(&level)); 177 EXPECT_FALSE(cm_->GetOutputVolume(&level));
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 EXPECT_FALSE(cm_->SetVideoRtxEnabled(false)); 228 EXPECT_FALSE(cm_->SetVideoRtxEnabled(false));
226 229
227 // Can set again after terminate. 230 // Can set again after terminate.
228 cm_->Terminate(); 231 cm_->Terminate();
229 EXPECT_TRUE(cm_->SetVideoRtxEnabled(true)); 232 EXPECT_TRUE(cm_->SetVideoRtxEnabled(true));
230 cm_->GetSupportedVideoCodecs(&codecs); 233 cm_->GetSupportedVideoCodecs(&codecs);
231 EXPECT_TRUE(ContainsMatchingCodec(codecs, rtx_codec)); 234 EXPECT_TRUE(ContainsMatchingCodec(codecs, rtx_codec));
232 } 235 }
233 236
234 } // namespace cricket 237 } // namespace cricket
OLDNEW
« webrtc/api/webrtcsession_unittest.cc ('K') | « webrtc/pc/channelmanager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698