| OLD | NEW |
| 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 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 } | 63 } |
| 64 | 64 |
| 65 private: | 65 private: |
| 66 rtc::scoped_ptr<AudioSinkInterface> sink_; | 66 rtc::scoped_ptr<AudioSinkInterface> sink_; |
| 67 }; | 67 }; |
| 68 | 68 |
| 69 // Helper class to test RtpSender/RtpReceiver. | 69 // Helper class to test RtpSender/RtpReceiver. |
| 70 class MockVideoProvider : public VideoProviderInterface { | 70 class MockVideoProvider : public VideoProviderInterface { |
| 71 public: | 71 public: |
| 72 virtual ~MockVideoProvider() {} | 72 virtual ~MockVideoProvider() {} |
| 73 MOCK_METHOD2(SetCaptureDevice, | 73 MOCK_METHOD2(SetSource, |
| 74 bool(uint32_t ssrc, cricket::VideoCapturer* camera)); | 74 bool(uint32_t ssrc, |
| 75 rtc::VideoSourceInterface<cricket::VideoFrame>* source)); |
| 75 MOCK_METHOD3(SetVideoPlayout, | 76 MOCK_METHOD3(SetVideoPlayout, |
| 76 void(uint32_t ssrc, | 77 void(uint32_t ssrc, |
| 77 bool enable, | 78 bool enable, |
| 78 rtc::VideoSinkInterface<cricket::VideoFrame>* sink)); | 79 rtc::VideoSinkInterface<cricket::VideoFrame>* sink)); |
| 79 MOCK_METHOD3(SetVideoSend, | 80 MOCK_METHOD3(SetVideoSend, |
| 80 void(uint32_t ssrc, | 81 void(uint32_t ssrc, |
| 81 bool enable, | 82 bool enable, |
| 82 const cricket::VideoOptions* options)); | 83 const cricket::VideoOptions* options)); |
| 83 | 84 |
| 84 MOCK_CONST_METHOD1(GetVideoRtpParameters, RtpParameters(uint32_t ssrc)); | 85 MOCK_CONST_METHOD1(GetVideoRtpParameters, RtpParameters(uint32_t ssrc)); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 104 EXPECT_TRUE(stream_->AddTrack(audio_track_)); | 105 EXPECT_TRUE(stream_->AddTrack(audio_track_)); |
| 105 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); | 106 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); |
| 106 audio_rtp_sender_ = | 107 audio_rtp_sender_ = |
| 107 new AudioRtpSender(stream_->GetAudioTracks()[0], stream_->label(), | 108 new AudioRtpSender(stream_->GetAudioTracks()[0], stream_->label(), |
| 108 &audio_provider_, nullptr); | 109 &audio_provider_, nullptr); |
| 109 audio_rtp_sender_->SetSsrc(kAudioSsrc); | 110 audio_rtp_sender_->SetSsrc(kAudioSsrc); |
| 110 } | 111 } |
| 111 | 112 |
| 112 void CreateVideoRtpSender() { | 113 void CreateVideoRtpSender() { |
| 113 AddVideoTrack(); | 114 AddVideoTrack(); |
| 114 EXPECT_CALL(video_provider_, | 115 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 115 SetCaptureDevice( | |
| 116 kVideoSsrc, video_track_->GetSource()->GetVideoCapturer())); | |
| 117 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 116 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 118 video_rtp_sender_ = new VideoRtpSender(stream_->GetVideoTracks()[0], | 117 video_rtp_sender_ = new VideoRtpSender(stream_->GetVideoTracks()[0], |
| 119 stream_->label(), &video_provider_); | 118 stream_->label(), &video_provider_); |
| 120 video_rtp_sender_->SetSsrc(kVideoSsrc); | 119 video_rtp_sender_->SetSsrc(kVideoSsrc); |
| 121 } | 120 } |
| 122 | 121 |
| 123 void DestroyAudioRtpSender() { | 122 void DestroyAudioRtpSender() { |
| 124 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)) | 123 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)) |
| 125 .Times(1); | 124 .Times(1); |
| 126 audio_rtp_sender_ = nullptr; | 125 audio_rtp_sender_ = nullptr; |
| 127 } | 126 } |
| 128 | 127 |
| 129 void DestroyVideoRtpSender() { | 128 void DestroyVideoRtpSender() { |
| 130 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, NULL)).Times(1); | 129 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, NULL)).Times(1); |
| 131 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 130 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 132 video_rtp_sender_ = nullptr; | 131 video_rtp_sender_ = nullptr; |
| 133 } | 132 } |
| 134 | 133 |
| 135 void CreateAudioRtpReceiver() { | 134 void CreateAudioRtpReceiver() { |
| 136 audio_track_ = AudioTrack::Create( | 135 audio_track_ = AudioTrack::Create( |
| 137 kAudioTrackId, RemoteAudioSource::Create(kAudioSsrc, NULL)); | 136 kAudioTrackId, RemoteAudioSource::Create(kAudioSsrc, NULL)); |
| 138 EXPECT_TRUE(stream_->AddTrack(audio_track_)); | 137 EXPECT_TRUE(stream_->AddTrack(audio_track_)); |
| 139 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true)); | 138 EXPECT_CALL(audio_provider_, SetAudioPlayout(kAudioSsrc, true)); |
| 140 audio_rtp_receiver_ = new AudioRtpReceiver(stream_, kAudioTrackId, | 139 audio_rtp_receiver_ = new AudioRtpReceiver(stream_, kAudioTrackId, |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 338 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); | 337 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); |
| 339 } | 338 } |
| 340 | 339 |
| 341 // Test that a video sender calls the expected methods on the provider once | 340 // Test that a video sender calls the expected methods on the provider once |
| 342 // it has a track and SSRC, when the SSRC is set first. | 341 // it has a track and SSRC, when the SSRC is set first. |
| 343 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupSsrcThenTrack) { | 342 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupSsrcThenTrack) { |
| 344 AddVideoTrack(); | 343 AddVideoTrack(); |
| 345 rtc::scoped_refptr<VideoRtpSender> sender = | 344 rtc::scoped_refptr<VideoRtpSender> sender = |
| 346 new VideoRtpSender(&video_provider_); | 345 new VideoRtpSender(&video_provider_); |
| 347 sender->SetSsrc(kVideoSsrc); | 346 sender->SetSsrc(kVideoSsrc); |
| 348 EXPECT_CALL(video_provider_, | 347 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 349 SetCaptureDevice(kVideoSsrc, | |
| 350 video_track_->GetSource()->GetVideoCapturer())); | |
| 351 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 348 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 352 sender->SetTrack(video_track_); | 349 sender->SetTrack(video_track_); |
| 353 | 350 |
| 354 // Calls expected from destructor. | 351 // Calls expected from destructor. |
| 355 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, nullptr)).Times(1); | 352 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); |
| 356 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 353 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 357 } | 354 } |
| 358 | 355 |
| 359 // Test that a video sender calls the expected methods on the provider once | 356 // Test that a video sender calls the expected methods on the provider once |
| 360 // it has a track and SSRC, when the SSRC is set last. | 357 // it has a track and SSRC, when the SSRC is set last. |
| 361 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupTrackThenSsrc) { | 358 TEST_F(RtpSenderReceiverTest, VideoSenderEarlyWarmupTrackThenSsrc) { |
| 362 AddVideoTrack(); | 359 AddVideoTrack(); |
| 363 rtc::scoped_refptr<VideoRtpSender> sender = | 360 rtc::scoped_refptr<VideoRtpSender> sender = |
| 364 new VideoRtpSender(&video_provider_); | 361 new VideoRtpSender(&video_provider_); |
| 365 sender->SetTrack(video_track_); | 362 sender->SetTrack(video_track_); |
| 366 EXPECT_CALL(video_provider_, | 363 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 367 SetCaptureDevice(kVideoSsrc, | |
| 368 video_track_->GetSource()->GetVideoCapturer())); | |
| 369 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 364 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 370 sender->SetSsrc(kVideoSsrc); | 365 sender->SetSsrc(kVideoSsrc); |
| 371 | 366 |
| 372 // Calls expected from destructor. | 367 // Calls expected from destructor. |
| 373 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, nullptr)).Times(1); | 368 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); |
| 374 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 369 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 375 } | 370 } |
| 376 | 371 |
| 377 // Test that the sender is disconnected from the provider when its SSRC is | 372 // Test that the sender is disconnected from the provider when its SSRC is |
| 378 // set to 0. | 373 // set to 0. |
| 379 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcSetToZero) { | 374 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcSetToZero) { |
| 380 rtc::scoped_refptr<AudioTrackInterface> track = | 375 rtc::scoped_refptr<AudioTrackInterface> track = |
| 381 AudioTrack::Create(kAudioTrackId, nullptr); | 376 AudioTrack::Create(kAudioTrackId, nullptr); |
| 382 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); | 377 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); |
| 383 rtc::scoped_refptr<AudioRtpSender> sender = | 378 rtc::scoped_refptr<AudioRtpSender> sender = |
| 384 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); | 379 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); |
| 385 sender->SetSsrc(kAudioSsrc); | 380 sender->SetSsrc(kAudioSsrc); |
| 386 | 381 |
| 387 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); | 382 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); |
| 388 sender->SetSsrc(0); | 383 sender->SetSsrc(0); |
| 389 | 384 |
| 390 // Make sure it's SetSsrc that called methods on the provider, and not the | 385 // Make sure it's SetSsrc that called methods on the provider, and not the |
| 391 // destructor. | 386 // destructor. |
| 392 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); | 387 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); |
| 393 } | 388 } |
| 394 | 389 |
| 395 // Test that the sender is disconnected from the provider when its SSRC is | 390 // Test that the sender is disconnected from the provider when its SSRC is |
| 396 // set to 0. | 391 // set to 0. |
| 397 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcSetToZero) { | 392 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcSetToZero) { |
| 398 AddVideoTrack(); | 393 AddVideoTrack(); |
| 399 EXPECT_CALL(video_provider_, | 394 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 400 SetCaptureDevice(kVideoSsrc, | |
| 401 video_track_->GetSource()->GetVideoCapturer())); | |
| 402 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 395 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 403 rtc::scoped_refptr<VideoRtpSender> sender = | 396 rtc::scoped_refptr<VideoRtpSender> sender = |
| 404 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); | 397 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); |
| 405 sender->SetSsrc(kVideoSsrc); | 398 sender->SetSsrc(kVideoSsrc); |
| 406 | 399 |
| 407 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, nullptr)).Times(1); | 400 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); |
| 408 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 401 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 409 sender->SetSsrc(0); | 402 sender->SetSsrc(0); |
| 410 | 403 |
| 411 // Make sure it's SetSsrc that called methods on the provider, and not the | 404 // Make sure it's SetSsrc that called methods on the provider, and not the |
| 412 // destructor. | 405 // destructor. |
| 413 EXPECT_CALL(video_provider_, SetCaptureDevice(_, _)).Times(0); | 406 EXPECT_CALL(video_provider_, SetSource(_, _)).Times(0); |
| 414 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0); | 407 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0); |
| 415 } | 408 } |
| 416 | 409 |
| 417 TEST_F(RtpSenderReceiverTest, AudioSenderTrackSetToNull) { | 410 TEST_F(RtpSenderReceiverTest, AudioSenderTrackSetToNull) { |
| 418 rtc::scoped_refptr<AudioTrackInterface> track = | 411 rtc::scoped_refptr<AudioTrackInterface> track = |
| 419 AudioTrack::Create(kAudioTrackId, nullptr); | 412 AudioTrack::Create(kAudioTrackId, nullptr); |
| 420 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); | 413 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); |
| 421 rtc::scoped_refptr<AudioRtpSender> sender = | 414 rtc::scoped_refptr<AudioRtpSender> sender = |
| 422 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); | 415 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); |
| 423 sender->SetSsrc(kAudioSsrc); | 416 sender->SetSsrc(kAudioSsrc); |
| 424 | 417 |
| 425 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); | 418 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); |
| 426 EXPECT_TRUE(sender->SetTrack(nullptr)); | 419 EXPECT_TRUE(sender->SetTrack(nullptr)); |
| 427 | 420 |
| 428 // Make sure it's SetTrack that called methods on the provider, and not the | 421 // Make sure it's SetTrack that called methods on the provider, and not the |
| 429 // destructor. | 422 // destructor. |
| 430 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); | 423 EXPECT_CALL(audio_provider_, SetAudioSend(_, _, _, _)).Times(0); |
| 431 } | 424 } |
| 432 | 425 |
| 433 TEST_F(RtpSenderReceiverTest, VideoSenderTrackSetToNull) { | 426 TEST_F(RtpSenderReceiverTest, VideoSenderTrackSetToNull) { |
| 434 AddVideoTrack(); | 427 AddVideoTrack(); |
| 435 EXPECT_CALL(video_provider_, | 428 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 436 SetCaptureDevice(kVideoSsrc, | |
| 437 video_track_->GetSource()->GetVideoCapturer())); | |
| 438 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 429 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 439 rtc::scoped_refptr<VideoRtpSender> sender = | 430 rtc::scoped_refptr<VideoRtpSender> sender = |
| 440 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); | 431 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); |
| 441 sender->SetSsrc(kVideoSsrc); | 432 sender->SetSsrc(kVideoSsrc); |
| 442 | 433 |
| 443 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, nullptr)).Times(1); | 434 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); |
| 444 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 435 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 445 EXPECT_TRUE(sender->SetTrack(nullptr)); | 436 EXPECT_TRUE(sender->SetTrack(nullptr)); |
| 446 | 437 |
| 447 // Make sure it's SetTrack that called methods on the provider, and not the | 438 // Make sure it's SetTrack that called methods on the provider, and not the |
| 448 // destructor. | 439 // destructor. |
| 449 EXPECT_CALL(video_provider_, SetCaptureDevice(_, _)).Times(0); | 440 EXPECT_CALL(video_provider_, SetSource(_, _)).Times(0); |
| 450 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0); | 441 EXPECT_CALL(video_provider_, SetVideoSend(_, _, _)).Times(0); |
| 451 } | 442 } |
| 452 | 443 |
| 453 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcChanged) { | 444 TEST_F(RtpSenderReceiverTest, AudioSenderSsrcChanged) { |
| 454 AddVideoTrack(); | 445 AddVideoTrack(); |
| 455 rtc::scoped_refptr<AudioTrackInterface> track = | 446 rtc::scoped_refptr<AudioTrackInterface> track = |
| 456 AudioTrack::Create(kAudioTrackId, nullptr); | 447 AudioTrack::Create(kAudioTrackId, nullptr); |
| 457 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); | 448 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, true, _, _)); |
| 458 rtc::scoped_refptr<AudioRtpSender> sender = | 449 rtc::scoped_refptr<AudioRtpSender> sender = |
| 459 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); | 450 new AudioRtpSender(track, kStreamLabel1, &audio_provider_, nullptr); |
| 460 sender->SetSsrc(kAudioSsrc); | 451 sender->SetSsrc(kAudioSsrc); |
| 461 | 452 |
| 462 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); | 453 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc, false, _, _)).Times(1); |
| 463 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, true, _, _)).Times(1); | 454 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, true, _, _)).Times(1); |
| 464 sender->SetSsrc(kAudioSsrc2); | 455 sender->SetSsrc(kAudioSsrc2); |
| 465 | 456 |
| 466 // Calls expected from destructor. | 457 // Calls expected from destructor. |
| 467 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, false, _, _)).Times(1); | 458 EXPECT_CALL(audio_provider_, SetAudioSend(kAudioSsrc2, false, _, _)).Times(1); |
| 468 } | 459 } |
| 469 | 460 |
| 470 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcChanged) { | 461 TEST_F(RtpSenderReceiverTest, VideoSenderSsrcChanged) { |
| 471 AddVideoTrack(); | 462 AddVideoTrack(); |
| 472 EXPECT_CALL(video_provider_, | 463 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, video_track_.get())); |
| 473 SetCaptureDevice(kVideoSsrc, | |
| 474 video_track_->GetSource()->GetVideoCapturer())); | |
| 475 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); | 464 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, true, _)); |
| 476 rtc::scoped_refptr<VideoRtpSender> sender = | 465 rtc::scoped_refptr<VideoRtpSender> sender = |
| 477 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); | 466 new VideoRtpSender(video_track_, kStreamLabel1, &video_provider_); |
| 478 sender->SetSsrc(kVideoSsrc); | 467 sender->SetSsrc(kVideoSsrc); |
| 479 | 468 |
| 480 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc, nullptr)).Times(1); | 469 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc, nullptr)).Times(1); |
| 481 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); | 470 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc, false, _)).Times(1); |
| 482 EXPECT_CALL(video_provider_, | 471 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc2, video_track_.get())); |
| 483 SetCaptureDevice(kVideoSsrc2, | |
| 484 video_track_->GetSource()->GetVideoCapturer())); | |
| 485 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, true, _)); | 472 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, true, _)); |
| 486 sender->SetSsrc(kVideoSsrc2); | 473 sender->SetSsrc(kVideoSsrc2); |
| 487 | 474 |
| 488 // Calls expected from destructor. | 475 // Calls expected from destructor. |
| 489 EXPECT_CALL(video_provider_, SetCaptureDevice(kVideoSsrc2, nullptr)).Times(1); | 476 EXPECT_CALL(video_provider_, SetSource(kVideoSsrc2, nullptr)).Times(1); |
| 490 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, false, _)).Times(1); | 477 EXPECT_CALL(video_provider_, SetVideoSend(kVideoSsrc2, false, _)).Times(1); |
| 491 } | 478 } |
| 492 | 479 |
| 493 TEST_F(RtpSenderReceiverTest, AudioSenderCanSetParameters) { | 480 TEST_F(RtpSenderReceiverTest, AudioSenderCanSetParameters) { |
| 494 CreateAudioRtpSender(); | 481 CreateAudioRtpSender(); |
| 495 | 482 |
| 496 EXPECT_CALL(audio_provider_, GetAudioRtpParameters(kAudioSsrc)) | 483 EXPECT_CALL(audio_provider_, GetAudioRtpParameters(kAudioSsrc)) |
| 497 .WillOnce(Return(RtpParameters())); | 484 .WillOnce(Return(RtpParameters())); |
| 498 EXPECT_CALL(audio_provider_, SetAudioRtpParameters(kAudioSsrc, _)) | 485 EXPECT_CALL(audio_provider_, SetAudioRtpParameters(kAudioSsrc, _)) |
| 499 .WillOnce(Return(true)); | 486 .WillOnce(Return(true)); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 510 .WillOnce(Return(RtpParameters())); | 497 .WillOnce(Return(RtpParameters())); |
| 511 EXPECT_CALL(video_provider_, SetVideoRtpParameters(kVideoSsrc, _)) | 498 EXPECT_CALL(video_provider_, SetVideoRtpParameters(kVideoSsrc, _)) |
| 512 .WillOnce(Return(true)); | 499 .WillOnce(Return(true)); |
| 513 RtpParameters params = video_rtp_sender_->GetParameters(); | 500 RtpParameters params = video_rtp_sender_->GetParameters(); |
| 514 EXPECT_TRUE(video_rtp_sender_->SetParameters(params)); | 501 EXPECT_TRUE(video_rtp_sender_->SetParameters(params)); |
| 515 | 502 |
| 516 DestroyVideoRtpSender(); | 503 DestroyVideoRtpSender(); |
| 517 } | 504 } |
| 518 | 505 |
| 519 } // namespace webrtc | 506 } // namespace webrtc |
| OLD | NEW |