OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright 2016 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 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
308 new FakeVideoTrackSourceForStats( | 308 new FakeVideoTrackSourceForStats( |
309 VideoTrackSourceInterface::Stats())); | 309 VideoTrackSourceInterface::Stats())); |
310 } | 310 } |
311 } | 311 } |
312 | 312 |
313 class RTCStatsCollectorTestHelper : public SetSessionDescriptionObserver { | 313 class RTCStatsCollectorTestHelper : public SetSessionDescriptionObserver { |
314 public: | 314 public: |
315 RTCStatsCollectorTestHelper() | 315 RTCStatsCollectorTestHelper() |
316 : worker_thread_(rtc::Thread::Current()), | 316 : worker_thread_(rtc::Thread::Current()), |
317 network_thread_(rtc::Thread::Current()), | 317 network_thread_(rtc::Thread::Current()), |
| 318 signaling_thread_(rtc::Thread::Current()), |
318 media_engine_(new cricket::FakeMediaEngine()), | 319 media_engine_(new cricket::FakeMediaEngine()), |
319 channel_manager_( | 320 channel_manager_(new cricket::ChannelManager(media_engine_, |
320 new cricket::ChannelManager(media_engine_, | 321 worker_thread_, |
321 worker_thread_, | 322 network_thread_)), |
322 network_thread_)), | |
323 media_controller_( | 323 media_controller_( |
324 MediaControllerInterface::Create(cricket::MediaConfig(), | 324 MediaControllerInterface::Create(cricket::MediaConfig(), |
325 worker_thread_, | 325 worker_thread_, |
326 channel_manager_.get(), | 326 channel_manager_.get(), |
327 &event_log_)), | 327 &event_log_)), |
328 session_(media_controller_.get()), | 328 session_(media_controller_.get()), |
329 pc_() { | 329 pc_() { |
330 // Default return values for mocks. | 330 // Default return values for mocks. |
331 EXPECT_CALL(pc_, local_streams()).WillRepeatedly(Return(nullptr)); | 331 EXPECT_CALL(pc_, local_streams()).WillRepeatedly(Return(nullptr)); |
332 EXPECT_CALL(pc_, remote_streams()).WillRepeatedly(Return(nullptr)); | 332 EXPECT_CALL(pc_, remote_streams()).WillRepeatedly(Return(nullptr)); |
333 EXPECT_CALL(pc_, session()).WillRepeatedly(Return(&session_)); | 333 EXPECT_CALL(pc_, session()).WillRepeatedly(Return(&session_)); |
334 EXPECT_CALL(pc_, GetSenders()).WillRepeatedly(Return( | 334 EXPECT_CALL(pc_, GetSenders()).WillRepeatedly(Return( |
335 std::vector<rtc::scoped_refptr<RtpSenderInterface>>())); | 335 std::vector<rtc::scoped_refptr<RtpSenderInterface>>())); |
336 EXPECT_CALL(pc_, GetReceivers()).WillRepeatedly(Return( | 336 EXPECT_CALL(pc_, GetReceivers()).WillRepeatedly(Return( |
337 std::vector<rtc::scoped_refptr<RtpReceiverInterface>>())); | 337 std::vector<rtc::scoped_refptr<RtpReceiverInterface>>())); |
338 EXPECT_CALL(pc_, sctp_data_channels()).WillRepeatedly( | 338 EXPECT_CALL(pc_, sctp_data_channels()).WillRepeatedly( |
339 ReturnRef(data_channels_)); | 339 ReturnRef(data_channels_)); |
340 EXPECT_CALL(session_, video_channel()).WillRepeatedly(ReturnNull()); | 340 EXPECT_CALL(session_, video_channel()).WillRepeatedly(ReturnNull()); |
341 EXPECT_CALL(session_, voice_channel()).WillRepeatedly(ReturnNull()); | 341 EXPECT_CALL(session_, voice_channel()).WillRepeatedly(ReturnNull()); |
342 EXPECT_CALL(session_, GetStats(_)).WillRepeatedly(ReturnNull()); | 342 EXPECT_CALL(session_, GetStats(_)).WillRepeatedly(ReturnNull()); |
343 EXPECT_CALL(session_, GetLocalCertificate(_, _)).WillRepeatedly( | 343 EXPECT_CALL(session_, GetLocalCertificate(_, _)).WillRepeatedly( |
344 Return(false)); | 344 Return(false)); |
345 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) | 345 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) |
346 .WillRepeatedly(Return(nullptr)); | 346 .WillRepeatedly(Return(nullptr)); |
347 } | 347 } |
348 | 348 |
349 rtc::ScopedFakeClock& fake_clock() { return fake_clock_; } | 349 rtc::ScopedFakeClock& fake_clock() { return fake_clock_; } |
350 rtc::Thread* worker_thread() { return worker_thread_; } | 350 rtc::Thread* worker_thread() { return worker_thread_; } |
351 rtc::Thread* network_thread() { return network_thread_; } | 351 rtc::Thread* network_thread() { return network_thread_; } |
| 352 rtc::Thread* signaling_thread() { return signaling_thread_; } |
352 cricket::FakeMediaEngine* media_engine() { return media_engine_; } | 353 cricket::FakeMediaEngine* media_engine() { return media_engine_; } |
353 MockWebRtcSession& session() { return session_; } | 354 MockWebRtcSession& session() { return session_; } |
354 MockPeerConnection& pc() { return pc_; } | 355 MockPeerConnection& pc() { return pc_; } |
355 std::vector<rtc::scoped_refptr<DataChannel>>& data_channels() { | 356 std::vector<rtc::scoped_refptr<DataChannel>>& data_channels() { |
356 return data_channels_; | 357 return data_channels_; |
357 } | 358 } |
358 | 359 |
359 // SetSessionDescriptionObserver overrides. | 360 // SetSessionDescriptionObserver overrides. |
360 void OnSuccess() override {} | 361 void OnSuccess() override {} |
361 void OnFailure(const std::string& error) override { | 362 void OnFailure(const std::string& error) override { |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
435 EXPECT_CALL(pc_, GetReceivers()).WillRepeatedly(Return( | 436 EXPECT_CALL(pc_, GetReceivers()).WillRepeatedly(Return( |
436 std::vector<rtc::scoped_refptr<RtpReceiverInterface>>({ | 437 std::vector<rtc::scoped_refptr<RtpReceiverInterface>>({ |
437 rtc::scoped_refptr<RtpReceiverInterface>(receiver.get()) }))); | 438 rtc::scoped_refptr<RtpReceiverInterface>(receiver.get()) }))); |
438 } | 439 } |
439 | 440 |
440 private: | 441 private: |
441 rtc::ScopedFakeClock fake_clock_; | 442 rtc::ScopedFakeClock fake_clock_; |
442 RtcEventLogNullImpl event_log_; | 443 RtcEventLogNullImpl event_log_; |
443 rtc::Thread* const worker_thread_; | 444 rtc::Thread* const worker_thread_; |
444 rtc::Thread* const network_thread_; | 445 rtc::Thread* const network_thread_; |
| 446 rtc::Thread* const signaling_thread_; |
445 cricket::FakeMediaEngine* media_engine_; | 447 cricket::FakeMediaEngine* media_engine_; |
446 std::unique_ptr<cricket::ChannelManager> channel_manager_; | 448 std::unique_ptr<cricket::ChannelManager> channel_manager_; |
447 std::unique_ptr<MediaControllerInterface> media_controller_; | 449 std::unique_ptr<MediaControllerInterface> media_controller_; |
448 MockWebRtcSession session_; | 450 MockWebRtcSession session_; |
449 MockPeerConnection pc_; | 451 MockPeerConnection pc_; |
450 | 452 |
451 std::vector<rtc::scoped_refptr<DataChannel>> data_channels_; | 453 std::vector<rtc::scoped_refptr<DataChannel>> data_channels_; |
452 }; | 454 }; |
453 | 455 |
454 class RTCTestStats : public RTCStats { | 456 class RTCTestStats : public RTCStats { |
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
690 })); | 692 })); |
691 | 693 |
692 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 694 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
693 ExpectReportContainsCertificateInfo(report, *local_certinfo); | 695 ExpectReportContainsCertificateInfo(report, *local_certinfo); |
694 ExpectReportContainsCertificateInfo(report, *remote_certinfo); | 696 ExpectReportContainsCertificateInfo(report, *remote_certinfo); |
695 } | 697 } |
696 | 698 |
697 TEST_F(RTCStatsCollectorTest, CollectRTCCodecStats) { | 699 TEST_F(RTCStatsCollectorTest, CollectRTCCodecStats) { |
698 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 700 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
699 cricket::VoiceChannel voice_channel( | 701 cricket::VoiceChannel voice_channel( |
700 test_->worker_thread(), test_->network_thread(), nullptr, | 702 test_->worker_thread(), test_->network_thread(), |
701 test_->media_engine(), voice_media_channel, "VoiceContentName", | 703 test_->signaling_thread(), test_->media_engine(), voice_media_channel, |
702 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); | 704 "VoiceContentName", kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
703 | 705 |
704 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 706 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
705 cricket::VideoChannel video_channel( | 707 cricket::VideoChannel video_channel( |
706 test_->worker_thread(), test_->network_thread(), nullptr, | 708 test_->worker_thread(), test_->network_thread(), |
707 video_media_channel, "VideoContentName", kDefaultRtcpMuxRequired, | 709 test_->signaling_thread(), video_media_channel, "VideoContentName", |
708 kDefaultSrtpRequired); | 710 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
709 | 711 |
710 // Audio | 712 // Audio |
711 cricket::VoiceMediaInfo voice_media_info; | 713 cricket::VoiceMediaInfo voice_media_info; |
712 | 714 |
713 RtpCodecParameters inbound_audio_codec; | 715 RtpCodecParameters inbound_audio_codec; |
714 inbound_audio_codec.payload_type = 1; | 716 inbound_audio_codec.payload_type = 1; |
715 inbound_audio_codec.mime_type = "opus"; | 717 inbound_audio_codec.mime_type = "opus"; |
716 inbound_audio_codec.clock_rate = 1337; | 718 inbound_audio_codec.clock_rate = 1337; |
717 voice_media_info.receive_codecs.insert( | 719 voice_media_info.receive_codecs.insert( |
718 std::make_pair(inbound_audio_codec.payload_type, inbound_audio_codec)); | 720 std::make_pair(inbound_audio_codec.payload_type, inbound_audio_codec)); |
(...skipping 824 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1543 expected_remote_video_track.frame_height = 4321; | 1545 expected_remote_video_track.frame_height = 4321; |
1544 ASSERT_TRUE(report->Get(expected_remote_video_track.id())); | 1546 ASSERT_TRUE(report->Get(expected_remote_video_track.id())); |
1545 EXPECT_EQ(expected_remote_video_track, | 1547 EXPECT_EQ(expected_remote_video_track, |
1546 report->Get(expected_remote_video_track.id())->cast_to< | 1548 report->Get(expected_remote_video_track.id())->cast_to< |
1547 RTCMediaStreamTrackStats>()); | 1549 RTCMediaStreamTrackStats>()); |
1548 } | 1550 } |
1549 | 1551 |
1550 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Audio) { | 1552 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Audio) { |
1551 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1553 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1552 cricket::VoiceChannel voice_channel( | 1554 cricket::VoiceChannel voice_channel( |
1553 test_->worker_thread(), test_->network_thread(), nullptr, | 1555 test_->worker_thread(), test_->network_thread(), |
1554 test_->media_engine(), voice_media_channel, "VoiceContentName", | 1556 test_->signaling_thread(), test_->media_engine(), voice_media_channel, |
1555 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); | 1557 "VoiceContentName", kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1556 | 1558 |
1557 test_->SetupRemoteTrackAndReceiver( | 1559 test_->SetupRemoteTrackAndReceiver( |
1558 cricket::MEDIA_TYPE_AUDIO, "RemoteAudioTrackID", 1); | 1560 cricket::MEDIA_TYPE_AUDIO, "RemoteAudioTrackID", 1); |
1559 | 1561 |
1560 cricket::VoiceMediaInfo voice_media_info; | 1562 cricket::VoiceMediaInfo voice_media_info; |
1561 | 1563 |
1562 voice_media_info.receivers.push_back(cricket::VoiceReceiverInfo()); | 1564 voice_media_info.receivers.push_back(cricket::VoiceReceiverInfo()); |
1563 voice_media_info.receivers[0].local_stats.push_back( | 1565 voice_media_info.receivers[0].local_stats.push_back( |
1564 cricket::SsrcReceiverInfo()); | 1566 cricket::SsrcReceiverInfo()); |
1565 voice_media_info.receivers[0].local_stats[0].ssrc = 1; | 1567 voice_media_info.receivers[0].local_stats[0].ssrc = 1; |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1622 EXPECT_EQ(audio, expected_audio); | 1624 EXPECT_EQ(audio, expected_audio); |
1623 | 1625 |
1624 EXPECT_TRUE(report->Get(*expected_audio.media_track_id)); | 1626 EXPECT_TRUE(report->Get(*expected_audio.media_track_id)); |
1625 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); | 1627 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); |
1626 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); | 1628 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); |
1627 } | 1629 } |
1628 | 1630 |
1629 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Video) { | 1631 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Video) { |
1630 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1632 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1631 cricket::VideoChannel video_channel( | 1633 cricket::VideoChannel video_channel( |
1632 test_->worker_thread(), test_->network_thread(), nullptr, | 1634 test_->worker_thread(), test_->network_thread(), |
1633 video_media_channel, "VideoContentName", kDefaultRtcpMuxRequired, | 1635 test_->signaling_thread(), video_media_channel, "VideoContentName", |
1634 kDefaultSrtpRequired); | 1636 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1635 | 1637 |
1636 test_->SetupRemoteTrackAndReceiver( | 1638 test_->SetupRemoteTrackAndReceiver( |
1637 cricket::MEDIA_TYPE_VIDEO, "RemoteVideoTrackID", 1); | 1639 cricket::MEDIA_TYPE_VIDEO, "RemoteVideoTrackID", 1); |
1638 | 1640 |
1639 cricket::VideoMediaInfo video_media_info; | 1641 cricket::VideoMediaInfo video_media_info; |
1640 | 1642 |
1641 video_media_info.receivers.push_back(cricket::VideoReceiverInfo()); | 1643 video_media_info.receivers.push_back(cricket::VideoReceiverInfo()); |
1642 video_media_info.receivers[0].local_stats.push_back( | 1644 video_media_info.receivers[0].local_stats.push_back( |
1643 cricket::SsrcReceiverInfo()); | 1645 cricket::SsrcReceiverInfo()); |
1644 video_media_info.receivers[0].local_stats[0].ssrc = 1; | 1646 video_media_info.receivers[0].local_stats[0].ssrc = 1; |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1707 EXPECT_EQ(video, expected_video); | 1709 EXPECT_EQ(video, expected_video); |
1708 | 1710 |
1709 EXPECT_TRUE(report->Get(*expected_video.media_track_id)); | 1711 EXPECT_TRUE(report->Get(*expected_video.media_track_id)); |
1710 EXPECT_TRUE(report->Get(*expected_video.transport_id)); | 1712 EXPECT_TRUE(report->Get(*expected_video.transport_id)); |
1711 EXPECT_TRUE(report->Get(*video.codec_id)); | 1713 EXPECT_TRUE(report->Get(*video.codec_id)); |
1712 } | 1714 } |
1713 | 1715 |
1714 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Audio) { | 1716 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Audio) { |
1715 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1717 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1716 cricket::VoiceChannel voice_channel( | 1718 cricket::VoiceChannel voice_channel( |
1717 test_->worker_thread(), test_->network_thread(), nullptr, | 1719 test_->worker_thread(), test_->network_thread(), |
1718 test_->media_engine(), voice_media_channel, "VoiceContentName", | 1720 test_->signaling_thread(), test_->media_engine(), voice_media_channel, |
1719 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); | 1721 "VoiceContentName", kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1720 | 1722 |
1721 test_->SetupLocalTrackAndSender( | 1723 test_->SetupLocalTrackAndSender( |
1722 cricket::MEDIA_TYPE_AUDIO, "LocalAudioTrackID", 1); | 1724 cricket::MEDIA_TYPE_AUDIO, "LocalAudioTrackID", 1); |
1723 | 1725 |
1724 cricket::VoiceMediaInfo voice_media_info; | 1726 cricket::VoiceMediaInfo voice_media_info; |
1725 | 1727 |
1726 voice_media_info.senders.push_back(cricket::VoiceSenderInfo()); | 1728 voice_media_info.senders.push_back(cricket::VoiceSenderInfo()); |
1727 voice_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); | 1729 voice_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); |
1728 voice_media_info.senders[0].local_stats[0].ssrc = 1; | 1730 voice_media_info.senders[0].local_stats[0].ssrc = 1; |
1729 voice_media_info.senders[0].packets_sent = 2; | 1731 voice_media_info.senders[0].packets_sent = 2; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1780 EXPECT_EQ(audio, expected_audio); | 1782 EXPECT_EQ(audio, expected_audio); |
1781 | 1783 |
1782 EXPECT_TRUE(report->Get(*expected_audio.media_track_id)); | 1784 EXPECT_TRUE(report->Get(*expected_audio.media_track_id)); |
1783 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); | 1785 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); |
1784 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); | 1786 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); |
1785 } | 1787 } |
1786 | 1788 |
1787 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Video) { | 1789 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Video) { |
1788 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1790 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1789 cricket::VideoChannel video_channel( | 1791 cricket::VideoChannel video_channel( |
1790 test_->worker_thread(), test_->network_thread(), nullptr, | 1792 test_->worker_thread(), test_->network_thread(), |
1791 video_media_channel, "VideoContentName", kDefaultRtcpMuxRequired, | 1793 test_->signaling_thread(), video_media_channel, "VideoContentName", |
1792 kDefaultSrtpRequired); | 1794 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1793 | 1795 |
1794 test_->SetupLocalTrackAndSender( | 1796 test_->SetupLocalTrackAndSender( |
1795 cricket::MEDIA_TYPE_VIDEO, "LocalVideoTrackID", 1); | 1797 cricket::MEDIA_TYPE_VIDEO, "LocalVideoTrackID", 1); |
1796 | 1798 |
1797 cricket::VideoMediaInfo video_media_info; | 1799 cricket::VideoMediaInfo video_media_info; |
1798 | 1800 |
1799 video_media_info.senders.push_back(cricket::VideoSenderInfo()); | 1801 video_media_info.senders.push_back(cricket::VideoSenderInfo()); |
1800 video_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); | 1802 video_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); |
1801 video_media_info.senders[0].local_stats[0].ssrc = 1; | 1803 video_media_info.senders[0].local_stats[0].ssrc = 1; |
1802 video_media_info.senders[0].firs_rcvd = 2; | 1804 video_media_info.senders[0].firs_rcvd = 2; |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1863 EXPECT_EQ(video, expected_video); | 1865 EXPECT_EQ(video, expected_video); |
1864 | 1866 |
1865 EXPECT_TRUE(report->Get(*expected_video.media_track_id)); | 1867 EXPECT_TRUE(report->Get(*expected_video.media_track_id)); |
1866 EXPECT_TRUE(report->Get(*expected_video.transport_id)); | 1868 EXPECT_TRUE(report->Get(*expected_video.transport_id)); |
1867 EXPECT_TRUE(report->Get(*expected_video.codec_id)); | 1869 EXPECT_TRUE(report->Get(*expected_video.codec_id)); |
1868 } | 1870 } |
1869 | 1871 |
1870 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Default) { | 1872 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Default) { |
1871 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1873 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1872 cricket::VoiceChannel voice_channel( | 1874 cricket::VoiceChannel voice_channel( |
1873 test_->worker_thread(), test_->network_thread(), nullptr, | 1875 test_->worker_thread(), test_->network_thread(), |
1874 test_->media_engine(), voice_media_channel, "VoiceContentName", | 1876 test_->signaling_thread(), test_->media_engine(), voice_media_channel, |
1875 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); | 1877 "VoiceContentName", kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1876 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1878 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1877 cricket::VideoChannel video_channel( | 1879 cricket::VideoChannel video_channel( |
1878 test_->worker_thread(), test_->network_thread(), nullptr, | 1880 test_->worker_thread(), test_->network_thread(), |
1879 video_media_channel, "VideoContentName", kDefaultRtcpMuxRequired, | 1881 test_->signaling_thread(), video_media_channel, "VideoContentName", |
1880 kDefaultSrtpRequired); | 1882 kDefaultRtcpMuxRequired, kDefaultSrtpRequired); |
1881 | 1883 |
1882 cricket::VoiceMediaInfo voice_media_info; | 1884 cricket::VoiceMediaInfo voice_media_info; |
1883 voice_media_info.senders.push_back(cricket::VoiceSenderInfo()); | 1885 voice_media_info.senders.push_back(cricket::VoiceSenderInfo()); |
1884 voice_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); | 1886 voice_media_info.senders[0].local_stats.push_back(cricket::SsrcSenderInfo()); |
1885 voice_media_info.senders[0].local_stats[0].ssrc = 1; | 1887 voice_media_info.senders[0].local_stats[0].ssrc = 1; |
1886 voice_media_info.senders[0].packets_sent = 2; | 1888 voice_media_info.senders[0].packets_sent = 2; |
1887 voice_media_info.senders[0].bytes_sent = 3; | 1889 voice_media_info.senders[0].bytes_sent = 3; |
1888 voice_media_info.senders[0].rtt_ms = -1; | 1890 voice_media_info.senders[0].rtt_ms = -1; |
1889 voice_media_info.senders[0].codec_payload_type = rtc::Optional<int>(42); | 1891 voice_media_info.senders[0].codec_payload_type = rtc::Optional<int>(42); |
1890 | 1892 |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2140 rtc::scoped_refptr<FakeRTCStatsCollector> collector_; | 2142 rtc::scoped_refptr<FakeRTCStatsCollector> collector_; |
2141 }; | 2143 }; |
2142 | 2144 |
2143 TEST_F(RTCStatsCollectorTestWithFakeCollector, ThreadUsageAndResultsMerging) { | 2145 TEST_F(RTCStatsCollectorTestWithFakeCollector, ThreadUsageAndResultsMerging) { |
2144 collector_->VerifyThreadUsageAndResultsMerging(); | 2146 collector_->VerifyThreadUsageAndResultsMerging(); |
2145 } | 2147 } |
2146 | 2148 |
2147 } // namespace | 2149 } // namespace |
2148 | 2150 |
2149 } // namespace webrtc | 2151 } // namespace webrtc |
OLD | NEW |