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

Side by Side Diff: webrtc/api/peerconnectionfactory_unittest.cc

Issue 2557803002: Add disabled certificate check support to IceServer PeerConnection API. (Closed)
Patch Set: Add disabled certificate check support to IceServer PeerConnection API. Created 4 years 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 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2012 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 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection( 174 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection(
175 config, nullptr, std::move(port_allocator_), std::move(cert_generator), 175 config, nullptr, std::move(port_allocator_), std::move(cert_generator),
176 &observer_)); 176 &observer_));
177 ASSERT_TRUE(pc.get() != NULL); 177 ASSERT_TRUE(pc.get() != NULL);
178 cricket::ServerAddresses stun_servers; 178 cricket::ServerAddresses stun_servers;
179 rtc::SocketAddress stun1("stun.l.google.com", 19302); 179 rtc::SocketAddress stun1("stun.l.google.com", 19302);
180 stun_servers.insert(stun1); 180 stun_servers.insert(stun1);
181 VerifyStunServers(stun_servers); 181 VerifyStunServers(stun_servers);
182 std::vector<cricket::RelayServerConfig> turn_servers; 182 std::vector<cricket::RelayServerConfig> turn_servers;
183 cricket::RelayServerConfig turn1("test.com", 1234, "test@hello.com", 183 cricket::RelayServerConfig turn1("test.com", 1234, "test@hello.com",
184 kTurnPassword, cricket::PROTO_UDP, false); 184 kTurnPassword, cricket::PROTO_UDP);
185 turn_servers.push_back(turn1); 185 turn_servers.push_back(turn1);
186 cricket::RelayServerConfig turn2("hello.com", kDefaultStunPort, "test", 186 cricket::RelayServerConfig turn2("hello.com", kDefaultStunPort, "test",
187 kTurnPassword, cricket::PROTO_TCP, false); 187 kTurnPassword, cricket::PROTO_TCP);
188 turn_servers.push_back(turn2); 188 turn_servers.push_back(turn2);
189 VerifyTurnServers(turn_servers); 189 VerifyTurnServers(turn_servers);
190 } 190 }
191 191
192 // This test verifies creation of PeerConnection with valid STUN and TURN 192 // This test verifies creation of PeerConnection with valid STUN and TURN
193 // configuration. Also verifies the list of URL's parsed correctly as expected. 193 // configuration. Also verifies the list of URL's parsed correctly as expected.
194 TEST_F(PeerConnectionFactoryTest, CreatePCUsingIceServersUrls) { 194 TEST_F(PeerConnectionFactoryTest, CreatePCUsingIceServersUrls) {
195 PeerConnectionInterface::RTCConfiguration config; 195 PeerConnectionInterface::RTCConfiguration config;
196 webrtc::PeerConnectionInterface::IceServer ice_server; 196 webrtc::PeerConnectionInterface::IceServer ice_server;
197 ice_server.urls.push_back(kStunIceServer); 197 ice_server.urls.push_back(kStunIceServer);
198 ice_server.urls.push_back(kTurnIceServer); 198 ice_server.urls.push_back(kTurnIceServer);
199 ice_server.urls.push_back(kTurnIceServerWithTransport); 199 ice_server.urls.push_back(kTurnIceServerWithTransport);
200 ice_server.password = kTurnPassword; 200 ice_server.password = kTurnPassword;
201 config.servers.push_back(ice_server); 201 config.servers.push_back(ice_server);
202 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator( 202 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator(
203 new FakeRTCCertificateGenerator()); 203 new FakeRTCCertificateGenerator());
204 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection( 204 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection(
205 config, nullptr, std::move(port_allocator_), std::move(cert_generator), 205 config, nullptr, std::move(port_allocator_), std::move(cert_generator),
206 &observer_)); 206 &observer_));
207 ASSERT_TRUE(pc.get() != NULL); 207 ASSERT_TRUE(pc.get() != NULL);
208 cricket::ServerAddresses stun_servers; 208 cricket::ServerAddresses stun_servers;
209 rtc::SocketAddress stun1("stun.l.google.com", 19302); 209 rtc::SocketAddress stun1("stun.l.google.com", 19302);
210 stun_servers.insert(stun1); 210 stun_servers.insert(stun1);
211 VerifyStunServers(stun_servers); 211 VerifyStunServers(stun_servers);
212 std::vector<cricket::RelayServerConfig> turn_servers; 212 std::vector<cricket::RelayServerConfig> turn_servers;
213 cricket::RelayServerConfig turn1("test.com", 1234, "test@hello.com", 213 cricket::RelayServerConfig turn1("test.com", 1234, "test@hello.com",
214 kTurnPassword, cricket::PROTO_UDP, false); 214 kTurnPassword, cricket::PROTO_UDP);
215 turn_servers.push_back(turn1); 215 turn_servers.push_back(turn1);
216 cricket::RelayServerConfig turn2("hello.com", kDefaultStunPort, "test", 216 cricket::RelayServerConfig turn2("hello.com", kDefaultStunPort, "test",
217 kTurnPassword, cricket::PROTO_TCP, false); 217 kTurnPassword, cricket::PROTO_TCP);
218 turn_servers.push_back(turn2); 218 turn_servers.push_back(turn2);
219 VerifyTurnServers(turn_servers); 219 VerifyTurnServers(turn_servers);
220 } 220 }
221 221
222 TEST_F(PeerConnectionFactoryTest, CreatePCUsingNoUsernameInUri) { 222 TEST_F(PeerConnectionFactoryTest, CreatePCUsingNoUsernameInUri) {
223 PeerConnectionInterface::RTCConfiguration config; 223 PeerConnectionInterface::RTCConfiguration config;
224 webrtc::PeerConnectionInterface::IceServer ice_server; 224 webrtc::PeerConnectionInterface::IceServer ice_server;
225 ice_server.uri = kStunIceServer; 225 ice_server.uri = kStunIceServer;
226 config.servers.push_back(ice_server); 226 config.servers.push_back(ice_server);
227 ice_server.uri = kTurnIceServerWithNoUsernameInUri; 227 ice_server.uri = kTurnIceServerWithNoUsernameInUri;
228 ice_server.username = kTurnUsername; 228 ice_server.username = kTurnUsername;
229 ice_server.password = kTurnPassword; 229 ice_server.password = kTurnPassword;
230 config.servers.push_back(ice_server); 230 config.servers.push_back(ice_server);
231 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator( 231 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator(
232 new FakeRTCCertificateGenerator()); 232 new FakeRTCCertificateGenerator());
233 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection( 233 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection(
234 config, nullptr, std::move(port_allocator_), std::move(cert_generator), 234 config, nullptr, std::move(port_allocator_), std::move(cert_generator),
235 &observer_)); 235 &observer_));
236 ASSERT_TRUE(pc.get() != NULL); 236 ASSERT_TRUE(pc.get() != NULL);
237 std::vector<cricket::RelayServerConfig> turn_servers; 237 std::vector<cricket::RelayServerConfig> turn_servers;
238 cricket::RelayServerConfig turn("test.com", 1234, kTurnUsername, 238 cricket::RelayServerConfig turn("test.com", 1234, kTurnUsername,
239 kTurnPassword, cricket::PROTO_UDP, false); 239 kTurnPassword, cricket::PROTO_UDP);
240 turn_servers.push_back(turn); 240 turn_servers.push_back(turn);
241 VerifyTurnServers(turn_servers); 241 VerifyTurnServers(turn_servers);
242 } 242 }
243 243
244 // This test verifies the PeerConnection created properly with TURN url which 244 // This test verifies the PeerConnection created properly with TURN url which
245 // has transport parameter in it. 245 // has transport parameter in it.
246 TEST_F(PeerConnectionFactoryTest, CreatePCUsingTurnUrlWithTransportParam) { 246 TEST_F(PeerConnectionFactoryTest, CreatePCUsingTurnUrlWithTransportParam) {
247 PeerConnectionInterface::RTCConfiguration config; 247 PeerConnectionInterface::RTCConfiguration config;
248 webrtc::PeerConnectionInterface::IceServer ice_server; 248 webrtc::PeerConnectionInterface::IceServer ice_server;
249 ice_server.uri = kTurnIceServerWithTransport; 249 ice_server.uri = kTurnIceServerWithTransport;
250 ice_server.password = kTurnPassword; 250 ice_server.password = kTurnPassword;
251 config.servers.push_back(ice_server); 251 config.servers.push_back(ice_server);
252 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator( 252 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator(
253 new FakeRTCCertificateGenerator()); 253 new FakeRTCCertificateGenerator());
254 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection( 254 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection(
255 config, nullptr, std::move(port_allocator_), std::move(cert_generator), 255 config, nullptr, std::move(port_allocator_), std::move(cert_generator),
256 &observer_)); 256 &observer_));
257 ASSERT_TRUE(pc.get() != NULL); 257 ASSERT_TRUE(pc.get() != NULL);
258 std::vector<cricket::RelayServerConfig> turn_servers; 258 std::vector<cricket::RelayServerConfig> turn_servers;
259 cricket::RelayServerConfig turn("hello.com", kDefaultStunPort, "test", 259 cricket::RelayServerConfig turn("hello.com", kDefaultStunPort, "test",
260 kTurnPassword, cricket::PROTO_TCP, false); 260 kTurnPassword, cricket::PROTO_TCP);
261 turn_servers.push_back(turn); 261 turn_servers.push_back(turn);
262 VerifyTurnServers(turn_servers); 262 VerifyTurnServers(turn_servers);
263 } 263 }
264 264
265 TEST_F(PeerConnectionFactoryTest, CreatePCUsingSecureTurnUrl) { 265 TEST_F(PeerConnectionFactoryTest, CreatePCUsingSecureTurnUrl) {
266 PeerConnectionInterface::RTCConfiguration config; 266 PeerConnectionInterface::RTCConfiguration config;
267 webrtc::PeerConnectionInterface::IceServer ice_server; 267 webrtc::PeerConnectionInterface::IceServer ice_server;
268 ice_server.uri = kSecureTurnIceServer; 268 ice_server.uri = kSecureTurnIceServer;
269 ice_server.password = kTurnPassword; 269 ice_server.password = kTurnPassword;
270 config.servers.push_back(ice_server); 270 config.servers.push_back(ice_server);
271 ice_server.uri = kSecureTurnIceServerWithoutTransportParam; 271 ice_server.uri = kSecureTurnIceServerWithoutTransportParam;
272 ice_server.password = kTurnPassword; 272 ice_server.password = kTurnPassword;
273 config.servers.push_back(ice_server); 273 config.servers.push_back(ice_server);
274 ice_server.uri = kSecureTurnIceServerWithoutTransportAndPortParam; 274 ice_server.uri = kSecureTurnIceServerWithoutTransportAndPortParam;
275 ice_server.password = kTurnPassword; 275 ice_server.password = kTurnPassword;
276 config.servers.push_back(ice_server); 276 config.servers.push_back(ice_server);
277 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator( 277 std::unique_ptr<FakeRTCCertificateGenerator> cert_generator(
278 new FakeRTCCertificateGenerator()); 278 new FakeRTCCertificateGenerator());
279 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection( 279 rtc::scoped_refptr<PeerConnectionInterface> pc(factory_->CreatePeerConnection(
280 config, nullptr, std::move(port_allocator_), std::move(cert_generator), 280 config, nullptr, std::move(port_allocator_), std::move(cert_generator),
281 &observer_)); 281 &observer_));
282 ASSERT_TRUE(pc.get() != NULL); 282 ASSERT_TRUE(pc.get() != NULL);
283 std::vector<cricket::RelayServerConfig> turn_servers; 283 std::vector<cricket::RelayServerConfig> turn_servers;
284 cricket::RelayServerConfig turn1("hello.com", kDefaultStunTlsPort, "test", 284 cricket::RelayServerConfig turn1("hello.com", kDefaultStunTlsPort, "test",
285 kTurnPassword, cricket::PROTO_TCP, true); 285 kTurnPassword, cricket::PROTO_TLS);
286 turn_servers.push_back(turn1); 286 turn_servers.push_back(turn1);
287 // TURNS with transport param should be default to tcp. 287 // TURNS with transport param should be default to tcp.
288 cricket::RelayServerConfig turn2("hello.com", 443, "test_no_transport", 288 cricket::RelayServerConfig turn2("hello.com", 443, "test_no_transport",
289 kTurnPassword, cricket::PROTO_TCP, true); 289 kTurnPassword, cricket::PROTO_TLS);
290 turn_servers.push_back(turn2); 290 turn_servers.push_back(turn2);
291 cricket::RelayServerConfig turn3("hello.com", kDefaultStunTlsPort, 291 cricket::RelayServerConfig turn3("hello.com", kDefaultStunTlsPort,
292 "test_no_transport", kTurnPassword, 292 "test_no_transport", kTurnPassword,
293 cricket::PROTO_TCP, true); 293 cricket::PROTO_TLS);
294 turn_servers.push_back(turn3); 294 turn_servers.push_back(turn3);
295 VerifyTurnServers(turn_servers); 295 VerifyTurnServers(turn_servers);
296 } 296 }
297 297
298 TEST_F(PeerConnectionFactoryTest, CreatePCUsingIPLiteralAddress) { 298 TEST_F(PeerConnectionFactoryTest, CreatePCUsingIPLiteralAddress) {
299 PeerConnectionInterface::RTCConfiguration config; 299 PeerConnectionInterface::RTCConfiguration config;
300 webrtc::PeerConnectionInterface::IceServer ice_server; 300 webrtc::PeerConnectionInterface::IceServer ice_server;
301 ice_server.uri = kStunIceServerWithIPv4Address; 301 ice_server.uri = kStunIceServerWithIPv4Address;
302 config.servers.push_back(ice_server); 302 config.servers.push_back(ice_server);
303 ice_server.uri = kStunIceServerWithIPv4AddressWithoutPort; 303 ice_server.uri = kStunIceServerWithIPv4AddressWithoutPort;
(...skipping 17 matching lines...) Expand all
321 rtc::SocketAddress stun2("1.2.3.4", 3478); 321 rtc::SocketAddress stun2("1.2.3.4", 3478);
322 stun_servers.insert(stun2); // Default port 322 stun_servers.insert(stun2); // Default port
323 rtc::SocketAddress stun3("2401:fa00:4::", 1234); 323 rtc::SocketAddress stun3("2401:fa00:4::", 1234);
324 stun_servers.insert(stun3); 324 stun_servers.insert(stun3);
325 rtc::SocketAddress stun4("2401:fa00:4::", 3478); 325 rtc::SocketAddress stun4("2401:fa00:4::", 3478);
326 stun_servers.insert(stun4); // Default port 326 stun_servers.insert(stun4); // Default port
327 VerifyStunServers(stun_servers); 327 VerifyStunServers(stun_servers);
328 328
329 std::vector<cricket::RelayServerConfig> turn_servers; 329 std::vector<cricket::RelayServerConfig> turn_servers;
330 cricket::RelayServerConfig turn1("2401:fa00:4::", 1234, "test", kTurnPassword, 330 cricket::RelayServerConfig turn1("2401:fa00:4::", 1234, "test", kTurnPassword,
331 cricket::PROTO_UDP, false); 331 cricket::PROTO_UDP);
332 turn_servers.push_back(turn1); 332 turn_servers.push_back(turn1);
333 VerifyTurnServers(turn_servers); 333 VerifyTurnServers(turn_servers);
334 } 334 }
335 335
336 // This test verifies the captured stream is rendered locally using a 336 // This test verifies the captured stream is rendered locally using a
337 // local video track. 337 // local video track.
338 TEST_F(PeerConnectionFactoryTest, LocalRendering) { 338 TEST_F(PeerConnectionFactoryTest, LocalRendering) {
339 cricket::FakeVideoCapturer* capturer = new cricket::FakeVideoCapturer(); 339 cricket::FakeVideoCapturer* capturer = new cricket::FakeVideoCapturer();
340 // The source take ownership of |capturer|. 340 // The source take ownership of |capturer|.
341 rtc::scoped_refptr<VideoTrackSourceInterface> source( 341 rtc::scoped_refptr<VideoTrackSourceInterface> source(
(...skipping 12 matching lines...) Expand all
354 track->set_enabled(false); 354 track->set_enabled(false);
355 EXPECT_TRUE(capturer->CaptureFrame()); 355 EXPECT_TRUE(capturer->CaptureFrame());
356 EXPECT_EQ(2, local_renderer.num_rendered_frames()); 356 EXPECT_EQ(2, local_renderer.num_rendered_frames());
357 EXPECT_TRUE(local_renderer.black_frame()); 357 EXPECT_TRUE(local_renderer.black_frame());
358 358
359 track->set_enabled(true); 359 track->set_enabled(true);
360 EXPECT_TRUE(capturer->CaptureFrame()); 360 EXPECT_TRUE(capturer->CaptureFrame());
361 EXPECT_EQ(3, local_renderer.num_rendered_frames()); 361 EXPECT_EQ(3, local_renderer.num_rendered_frames());
362 EXPECT_FALSE(local_renderer.black_frame()); 362 EXPECT_FALSE(local_renderer.black_frame());
363 } 363 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698