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

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

Issue 1838413002: Combining SetVideoSend and SetSource into one method. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Fixing comments and other minor things 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 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 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 } 69 }
70 70
71 private: 71 private:
72 std::unique_ptr<AudioSinkInterface> sink_; 72 std::unique_ptr<AudioSinkInterface> sink_;
73 }; 73 };
74 74
75 // Helper class to test RtpSender/RtpReceiver. 75 // Helper class to test RtpSender/RtpReceiver.
76 class MockVideoProvider : public VideoProviderInterface { 76 class MockVideoProvider : public VideoProviderInterface {
77 public: 77 public:
78 virtual ~MockVideoProvider() {} 78 virtual ~MockVideoProvider() {}
79 MOCK_METHOD2(SetSource,
80 bool(uint32_t ssrc,
81 rtc::VideoSourceInterface<cricket::VideoFrame>* source));
82 MOCK_METHOD3(SetVideoPlayout, 79 MOCK_METHOD3(SetVideoPlayout,
83 void(uint32_t ssrc, 80 void(uint32_t ssrc,
84 bool enable, 81 bool enable,
85 rtc::VideoSinkInterface<cricket::VideoFrame>* sink)); 82 rtc::VideoSinkInterface<cricket::VideoFrame>* sink));
86 MOCK_METHOD3(SetVideoSend, 83 MOCK_METHOD4(SetVideoSend,
87 void(uint32_t ssrc, 84 void(uint32_t ssrc,
88 bool enable, 85 bool enable,
89 const cricket::VideoOptions* options)); 86 const cricket::VideoOptions* options,
87 rtc::VideoSourceInterface<cricket::VideoFrame>* source));
90 88
91 MOCK_CONST_METHOD1(GetVideoRtpParameters, RtpParameters(uint32_t ssrc)); 89 MOCK_CONST_METHOD1(GetVideoRtpParameters, RtpParameters(uint32_t ssrc));
92 MOCK_METHOD2(SetVideoRtpParameters, 90 MOCK_METHOD2(SetVideoRtpParameters,
93 bool(uint32_t ssrc, const RtpParameters&)); 91 bool(uint32_t ssrc, const RtpParameters&));
94 }; 92 };
95 93
96 class RtpSenderReceiverTest : public testing::Test { 94 class RtpSenderReceiverTest : public testing::Test {
97 public: 95 public:
98 virtual void SetUp() { 96 virtual void SetUp() {
99 stream_ = MediaStream::Create(kStreamLabel1); 97 stream_ = MediaStream::Create(kStreamLabel1);
(...skipping 11 matching lines...) Expand all
111 EXPECT_TRUE(stream_->AddTrack(audio_track_)); 109 EXPECT_TRUE(stream_->AddTrack(audio_track_));
112 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); 110 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _));
113 audio_rtp_sender_ = 111 audio_rtp_sender_ =
114 new AudioRtpSender(stream_->GetAudioTracks()[0], stream_->label(), 112 new AudioRtpSender(stream_->GetAudioTracks()[0], stream_->label(),
115 &audio_provider_, nullptr); 113 &audio_provider_, nullptr);
116 audio_rtp_sender_->SetSsrc(kAudioSsrc); 114 audio_rtp_sender_->SetSsrc(kAudioSsrc);
117 } 115 }
118 116
119 void CreateVideoRtpSender() { 117 void CreateVideoRtpSender() {
120 AddVideoTrack(); 118 AddVideoTrack();
121 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); 119 EXPECT_CALL(video_provider_,
122 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 120 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
123 video_rtp_sender_ = new VideoRtpSender(stream_->GetVideoTracks()[0], 121 video_rtp_sender_ = new VideoRtpSender(stream_->GetVideoTracks()[0],
124 stream_->label(), &video_provider_); 122 stream_->label(), &video_provider_);
125 video_rtp_sender_->SetSsrc(kVideoSsrc); 123 video_rtp_sender_->SetSsrc(kVideoSsrc);
126 } 124 }
127 125
128 void DestroyAudioRtpSender() { 126 void DestroyAudioRtpSender() {
129 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)) 127 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _))
130 .Times(1); 128 .Times(1);
131 audio_rtp_sender_ = nullptr; 129 audio_rtp_sender_ = nullptr;
132 } 130 }
133 131
134 void DestroyVideoRtpSender() { 132 void DestroyVideoRtpSender() {
135 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, NULL)).Times(1); 133 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
136 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); 134 .Times(1);
137 video_rtp_sender_ = nullptr; 135 video_rtp_sender_ = nullptr;
138 } 136 }
139 137
140 void CreateAudioRtpReceiver() { 138 void CreateAudioRtpReceiver() {
141 audio_track_ = AudioTrack::Create( 139 audio_track_ = AudioTrack::Create(
142 kAudioTrackId, RemoteAudioSource::Create(kAudioSsrc, NULL)); 140 kAudioTrackId, RemoteAudioSource::Create(kAudioSsrc, NULL));
143 EXPECT_TRUE(stream_->AddTrack(audio_track_)); 141 EXPECT_TRUE(stream_->AddTrack(audio_track_));
144 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true)); 142 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true));
145 audio_rtp_receiver_ = new AudioRtpReceiver(stream_, kAudioTrackId, 143 audio_rtp_receiver_ = new AudioRtpReceiver(stream_, kAudioTrackId,
146 kAudioSsrc, &audio_provider_); 144 kAudioSsrc, &audio_provider_);
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 223
226 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true)); 224 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true));
227 audio_track_->set_enabled(true); 225 audio_track_->set_enabled(true);
228 226
229 DestroyAudioRtpReceiver(); 227 DestroyAudioRtpReceiver();
230 } 228 }
231 229
232 TEST_F(RtpSenderReceiverTest, LocalVideoTrackDisable) { 230 TEST_F(RtpSenderReceiverTest, LocalVideoTrackDisable) {
233 CreateVideoRtpSender(); 231 CreateVideoRtpSender();
234 232
235 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)); 233 EXPECT_CALL(video_provider_,
234 SetVideoSend(kVideoSsrc, false, _, video_track_.get()));
236 video_track_->set_enabled(false); 235 video_track_->set_enabled(false);
237 236
238 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 237 EXPECT_CALL(video_provider_,
238 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
239 video_track_->set_enabled(true); 239 video_track_->set_enabled(true);
240 240
241 DestroyVideoRtpSender(); 241 DestroyVideoRtpSender();
242 } 242 }
243 243
244 TEST_F(RtpSenderReceiverTest, RemoteVideoTrackState) { 244 TEST_F(RtpSenderReceiverTest, RemoteVideoTrackState) {
245 CreateVideoRtpReceiver(); 245 CreateVideoRtpReceiver();
246 246
247 EXPECT_EQ(webrtc::MediaStreamTrackInterface::kLive, video_track_->state()); 247 EXPECT_EQ(webrtc::MediaStreamTrackInterface::kLive, video_track_->state());
248 EXPECT_EQ(webrtc::MediaSourceInterface::kLive, 248 EXPECT_EQ(webrtc::MediaSourceInterface::kLive,
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); 343 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1);
344 } 344 }
345 345
346 // Test that a video sender calls the expected methods on the provider once 346 // Test that a video sender calls the expected methods on the provider once
347 // it has a track and SSRC, when the SSRC is set first. 347 // it has a track and SSRC, when the SSRC is set first.
348 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupSsrcThenTrack) { 348 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupSsrcThenTrack) {
349 AddVideoTrack(); 349 AddVideoTrack();
350 rtc::scoped_refptr<VideoRtpSender> sender = 350 rtc::scoped_refptr<VideoRtpSender> sender =
351 new VideoRtpSender(&video_provider_); 351 new VideoRtpSender(&video_provider_);
352 sender->SetSsrc(kVideoSsrc); 352 sender->SetSsrc(kVideoSsrc);
353 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); 353 EXPECT_CALL(video_provider_,
354 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 354 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
355 sender->SetTrack(video_track_); 355 sender->SetTrack(video_track_);
356 356
357 // Calls expected from destructor. 357 // Calls expected from destructor.
358 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); 358 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
359 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); 359 .Times(1);
360 } 360 }
361 361
362 // Test that a video sender calls the expected methods on the provider once 362 // Test that a video sender calls the expected methods on the provider once
363 // it has a track and SSRC, when the SSRC is set last. 363 // it has a track and SSRC, when the SSRC is set last.
364 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupTrackThenSsrc) { 364 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupTrackThenSsrc) {
365 AddVideoTrack(); 365 AddVideoTrack();
366 rtc::scoped_refptr<VideoRtpSender> sender = 366 rtc::scoped_refptr<VideoRtpSender> sender =
367 new VideoRtpSender(&video_provider_); 367 new VideoRtpSender(&video_provider_);
368 sender->SetTrack(video_track_); 368 sender->SetTrack(video_track_);
369 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); 369 EXPECT_CALL(video_provider_,
370 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 370 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
371 sender->SetSsrc(kVideoSsrc); 371 sender->SetSsrc(kVideoSsrc);
372 372
373 // Calls expected from destructor. 373 // Calls expected from destructor.
374 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); 374 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
375 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); 375 .Times(1);
376 } 376 }
377 377
378 // Test that the sender is disconnected from the provider when its SSRC is 378 // Test that the sender is disconnected from the provider when its SSRC is
379 // set to 0. 379 // set to 0.
380 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcSetToZero) { 380 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcSetToZero) {
381 rtc::scoped_refptr<AudioTrackInterface> track = 381 rtc::scoped_refptr<AudioTrackInterface> track =
382 AudioTrack::Create(kAudioTrackId, nullptr); 382 AudioTrack::Create(kAudioTrackId, nullptr);
383 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); 383 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _));
384 rtc::scoped_refptr<AudioRtpSender> sender = 384 rtc::scoped_refptr<AudioRtpSender> sender =
385 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); 385 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr);
386 sender->SetSsrc(kAudioSsrc); 386 sender->SetSsrc(kAudioSsrc);
387 387
388 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); 388 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1);
389 sender->SetSsrc(0); 389 sender->SetSsrc(0);
390 390
391 // Make sure it's SetSsrc that called methods on the provider, and not the 391 // Make sure it's SetSsrc that called methods on the provider, and not the
392 // destructor. 392 // destructor.
393 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); 393 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0);
394 } 394 }
395 395
396 // Test that the sender is disconnected from the provider when its SSRC is 396 // Test that the sender is disconnected from the provider when its SSRC is
397 // set to 0. 397 // set to 0.
398 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcSetToZero) { 398 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcSetToZero) {
399 AddVideoTrack(); 399 AddVideoTrack();
400 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); 400 EXPECT_CALL(video_provider_,
401 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 401 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
402 rtc::scoped_refptr<VideoRtpSender> sender = 402 rtc::scoped_refptr<VideoRtpSender> sender =
403 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); 403 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_);
404 sender->SetSsrc(kVideoSsrc); 404 sender->SetSsrc(kVideoSsrc);
405 405
406 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); 406 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
407 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); 407 .Times(1);
408 sender->SetSsrc(0); 408 sender->SetSsrc(0);
409 409
410 // Make sure it's SetSsrc that called methods on the provider, and not the 410 // Make sure it's SetSsrc that called methods on the provider, and not the
411 // destructor. 411 // destructor.
412 EXPECT_CALL(video_provider_, SetSource(_, _)).Times(0); 412 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _, _)).Times(0);
413 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0);
414 } 413 }
415 414
416 TEST_F(RtpSenderReceiverTest, AudioSenderTrackSetToNull) { 415 TEST_F(RtpSenderReceiverTest, AudioSenderTrackSetToNull) {
417 rtc::scoped_refptr<AudioTrackInterface> track = 416 rtc::scoped_refptr<AudioTrackInterface> track =
418 AudioTrack::Create(kAudioTrackId, nullptr); 417 AudioTrack::Create(kAudioTrackId, nullptr);
419 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); 418 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _));
420 rtc::scoped_refptr<AudioRtpSender> sender = 419 rtc::scoped_refptr<AudioRtpSender> sender =
421 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); 420 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr);
422 sender->SetSsrc(kAudioSsrc); 421 sender->SetSsrc(kAudioSsrc);
423 422
(...skipping 10 matching lines...) Expand all
434 // Make sure it's SetTrack that called methods on the provider, and not the 433 // Make sure it's SetTrack that called methods on the provider, and not the
435 // destructor. 434 // destructor.
436 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); 435 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0);
437 } 436 }
438 437
439 TEST_F(RtpSenderReceiverTest, VideoSenderTrackSetToNull) { 438 TEST_F(RtpSenderReceiverTest, VideoSenderTrackSetToNull) {
440 rtc::scoped_refptr<VideoTrackSourceInterface> source( 439 rtc::scoped_refptr<VideoTrackSourceInterface> source(
441 FakeVideoTrackSource::Create()); 440 FakeVideoTrackSource::Create());
442 rtc::scoped_refptr<VideoTrackInterface> track = 441 rtc::scoped_refptr<VideoTrackInterface> track =
443 VideoTrack::Create(kVideoTrackId, source); 442 VideoTrack::Create(kVideoTrackId, source);
444 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, track.get())); 443 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _, track.get()));
445 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _));
446 rtc::scoped_refptr<VideoRtpSender> sender = 444 rtc::scoped_refptr<VideoRtpSender> sender =
447 new VideoRtpSender(track, kStreamLabel1, &video_provider_); 445 new VideoRtpSender(track, kStreamLabel1, &video_provider_);
448 sender->SetSsrc(kVideoSsrc); 446 sender->SetSsrc(kVideoSsrc);
449 447
450 // Expect that SetSource will be called before the reference to the track 448 // Expect that SetVideoSend will be called before the reference to the track
451 // is released. 449 // is released.
452 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)) 450 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
453 .Times(1) 451 .Times(1)
454 .WillOnce(InvokeWithoutArgs([&track] { 452 .WillOnce(InvokeWithoutArgs([&track] {
455 EXPECT_LT(2, track->AddRef()); 453 EXPECT_LT(2, track->AddRef());
456 track->Release(); 454 track->Release();
457 return true;
458 })); 455 }));
459 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1);
460 EXPECT_TRUE(sender->SetTrack(nullptr)); 456 EXPECT_TRUE(sender->SetTrack(nullptr));
461 457
462 // Make sure it's SetTrack that called methods on the provider, and not the 458 // Make sure it's SetTrack that called methods on the provider, and not the
463 // destructor. 459 // destructor.
464 EXPECT_CALL(video_provider_, SetSource(_, _)).Times(0); 460 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _, _)).Times(0);
465 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0);
466 } 461 }
467 462
468 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcChanged) { 463 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcChanged) {
469 AddVideoTrack(); 464 AddVideoTrack();
470 rtc::scoped_refptr<AudioTrackInterface> track = 465 rtc::scoped_refptr<AudioTrackInterface> track =
471 AudioTrack::Create(kAudioTrackId, nullptr); 466 AudioTrack::Create(kAudioTrackId, nullptr);
472 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); 467 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _));
473 rtc::scoped_refptr<AudioRtpSender> sender = 468 rtc::scoped_refptr<AudioRtpSender> sender =
474 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); 469 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr);
475 sender->SetSsrc(kAudioSsrc); 470 sender->SetSsrc(kAudioSsrc);
476 471
477 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); 472 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1);
478 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, true, _, _)).Times(1); 473 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, true, _, _)).Times(1);
479 sender->SetSsrc(kAudioSsrc2); 474 sender->SetSsrc(kAudioSsrc2);
480 475
481 // Calls expected from destructor. 476 // Calls expected from destructor.
482 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, false, _, _)).Times(1); 477 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, false, _, _)).Times(1);
483 } 478 }
484 479
485 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcChanged) { 480 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcChanged) {
486 AddVideoTrack(); 481 AddVideoTrack();
487 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); 482 EXPECT_CALL(video_provider_,
488 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); 483 SetVideoSend(kVideoSsrc, true, _, video_track_.get()));
489 rtc::scoped_refptr<VideoRtpSender> sender = 484 rtc::scoped_refptr<VideoRtpSender> sender =
490 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); 485 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_);
491 sender->SetSsrc(kVideoSsrc); 486 sender->SetSsrc(kVideoSsrc);
492 487
493 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); 488 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _, nullptr))
494 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); 489 .Times(1);
495 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc2, video_track_.get())); 490 EXPECT_CALL(video_provider_,
496 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, true, _)); 491 SetVideoSend(kVideoSsrc2, true, _, video_track_.get()))
492 .Times(1);
497 sender->SetSsrc(kVideoSsrc2); 493 sender->SetSsrc(kVideoSsrc2);
498 494
499 // Calls expected from destructor. 495 // Calls expected from destructor.
500 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc2, nullptr)).Times(1); 496 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, false, _, nullptr))
501 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, false, _)).Times(1); 497 .Times(1);
502 } 498 }
503 499
504 TEST_F(RtpSenderReceiverTest, AudioSenderCanSetParameters) { 500 TEST_F(RtpSenderReceiverTest, AudioSenderCanSetParameters) {
505 CreateAudioRtpSender(); 501 CreateAudioRtpSender();
506 502
507 EXPECT_CALL(audio_provider_, GetAudioRtpParameters(kAudioSsrc)) 503 EXPECT_CALL(audio_provider_, GetAudioRtpParameters(kAudioSsrc))
508 .WillOnce(Return(RtpParameters())); 504 .WillOnce(Return(RtpParameters()));
509 EXPECT_CALL(audio_provider_, SetAudioRtpParameters(kAudioSsrc, _)) 505 EXPECT_CALL(audio_provider_, SetAudioRtpParameters(kAudioSsrc, _))
510 .WillOnce(Return(true)); 506 .WillOnce(Return(true));
511 RtpParameters params = audio_rtp_sender_->GetParameters(); 507 RtpParameters params = audio_rtp_sender_->GetParameters();
512 EXPECT_TRUE(audio_rtp_sender_->SetParameters(params)); 508 EXPECT_TRUE(audio_rtp_sender_->SetParameters(params));
513 509
514 DestroyAudioRtpSender(); 510 DestroyAudioRtpSender();
515 } 511 }
516 512
517 TEST_F(RtpSenderReceiverTest, VideoSenderCanSetParameters) { 513 TEST_F(RtpSenderReceiverTest, VideoSenderCanSetParameters) {
518 CreateVideoRtpSender(); 514 CreateVideoRtpSender();
519 515
520 EXPECT_CALL(video_provider_, GetVideoRtpParameters(kVideoSsrc)) 516 EXPECT_CALL(video_provider_, GetVideoRtpParameters(kVideoSsrc))
521 .WillOnce(Return(RtpParameters())); 517 .WillOnce(Return(RtpParameters()));
522 EXPECT_CALL(video_provider_, SetVideoRtpParameters(kVideoSsrc, _)) 518 EXPECT_CALL(video_provider_, SetVideoRtpParameters(kVideoSsrc, _))
523 .WillOnce(Return(true)); 519 .WillOnce(Return(true));
524 RtpParameters params = video_rtp_sender_->GetParameters(); 520 RtpParameters params = video_rtp_sender_->GetParameters();
525 EXPECT_TRUE(video_rtp_sender_->SetParameters(params)); 521 EXPECT_TRUE(video_rtp_sender_->SetParameters(params));
526 522
527 DestroyVideoRtpSender(); 523 DestroyVideoRtpSender();
528 } 524 }
529 525
530 } // namespace webrtc 526 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698