| Index: pc/statscollector_unittest.cc
|
| diff --git a/pc/statscollector_unittest.cc b/pc/statscollector_unittest.cc
|
| index 6a1d82702b217c3a7080c4f8fd980bc17d69ef7c..68cc235856c62696c75578a47b9b72ab07573b6e 100644
|
| --- a/pc/statscollector_unittest.cc
|
| +++ b/pc/statscollector_unittest.cc
|
| @@ -572,18 +572,19 @@ class StatsCollectorTest : public testing::Test {
|
| worker_thread_,
|
| network_thread_)),
|
|
|
| - session_(channel_manager_.get(), cricket::MediaConfig()) {
|
| + session_(channel_manager_.get(), cricket::MediaConfig()),
|
| + pc_(new rtc::RefCountedObject<MockPeerConnection>()) {
|
| // By default, we ignore session GetStats calls.
|
| EXPECT_CALL(session_, GetStats(_)).WillRepeatedly(ReturnNull());
|
| // Add default returns for mock classes.
|
| EXPECT_CALL(session_, video_channel()).WillRepeatedly(ReturnNull());
|
| EXPECT_CALL(session_, voice_channel()).WillRepeatedly(ReturnNull());
|
| - EXPECT_CALL(pc_, session()).WillRepeatedly(Return(&session_));
|
| - EXPECT_CALL(pc_, sctp_data_channels())
|
| + EXPECT_CALL(*pc_, session()).WillRepeatedly(Return(&session_));
|
| + EXPECT_CALL(*pc_, sctp_data_channels())
|
| .WillRepeatedly(ReturnRef(data_channels_));
|
| - EXPECT_CALL(pc_, GetSenders()).WillRepeatedly(Return(
|
| + EXPECT_CALL(*pc_, GetSenders()).WillRepeatedly(Return(
|
| std::vector<rtc::scoped_refptr<RtpSenderInterface>>()));
|
| - EXPECT_CALL(pc_, GetReceivers()).WillRepeatedly(Return(
|
| + EXPECT_CALL(*pc_, GetReceivers()).WillRepeatedly(Return(
|
| std::vector<rtc::scoped_refptr<RtpReceiverInterface>>()));
|
| }
|
|
|
| @@ -754,7 +755,7 @@ class StatsCollectorTest : public testing::Test {
|
| const std::vector<std::string>& local_ders,
|
| std::unique_ptr<rtc::FakeSSLCertificate> remote_cert,
|
| const std::vector<std::string>& remote_ders) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| StatsReports reports; // returned values.
|
|
|
| @@ -846,7 +847,7 @@ class StatsCollectorTest : public testing::Test {
|
| cricket::FakeMediaEngine* media_engine_;
|
| std::unique_ptr<cricket::ChannelManager> channel_manager_;
|
| MockWebRtcSession session_;
|
| - MockPeerConnection pc_;
|
| + rtc::scoped_refptr<MockPeerConnection> pc_;
|
| FakeDataChannelProvider data_channel_provider_;
|
| SessionStats session_stats_;
|
| rtc::scoped_refptr<webrtc::MediaStream> stream_;
|
| @@ -863,7 +864,7 @@ TEST_F(StatsCollectorTest, FilterOutNegativeDataChannelId) {
|
| DataChannelInterface::DataState::kConnecting);
|
|
|
| AddDataChannel(cricket::DCT_SCTP, label, id);
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
|
|
|
| @@ -886,7 +887,7 @@ TEST_F(StatsCollectorTest, ExtractDataInfo) {
|
| DataChannelInterface::DataState::kConnecting);
|
|
|
| AddDataChannel(cricket::DCT_SCTP, label, id);
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
|
|
|
| @@ -918,7 +919,7 @@ TEST_F(StatsCollectorTest, ExtractDataInfo) {
|
|
|
| // This test verifies that 64-bit counters are passed successfully.
|
| TEST_F(StatsCollectorTest, BytesCounterHandles64Bits) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -967,7 +968,7 @@ TEST_F(StatsCollectorTest, BytesCounterHandles64Bits) {
|
|
|
| // Test that audio BWE information is reported via stats.
|
| TEST_F(StatsCollectorTest, AudioBandwidthEstimationInfoIsReported) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1034,7 +1035,7 @@ TEST_F(StatsCollectorTest, AudioBandwidthEstimationInfoIsReported) {
|
|
|
| // Test that video BWE information is reported via stats.
|
| TEST_F(StatsCollectorTest, VideoBandwidthEstimationInfoIsReported) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1103,7 +1104,7 @@ TEST_F(StatsCollectorTest, VideoBandwidthEstimationInfoIsReported) {
|
| // This test verifies that an object of type "googSession" always
|
| // exists in the returned stats.
|
| TEST_F(StatsCollectorTest, SessionObjectExists) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| StatsReports reports; // returned values.
|
| stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
|
| @@ -1116,7 +1117,7 @@ TEST_F(StatsCollectorTest, SessionObjectExists) {
|
| // This test verifies that only one object of type "googSession" exists
|
| // in the returned stats.
|
| TEST_F(StatsCollectorTest, OnlyOneSessionObjectExists) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| StatsReports reports; // returned values.
|
| stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
|
| @@ -1133,7 +1134,7 @@ TEST_F(StatsCollectorTest, OnlyOneSessionObjectExists) {
|
| // This test verifies that the empty track report exists in the returned stats
|
| // without calling StatsCollector::UpdateStats.
|
| TEST_F(StatsCollectorTest, TrackObjectExistsWithoutUpdateStats) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
|
| cricket::VideoChannel video_channel(
|
| @@ -1159,7 +1160,7 @@ TEST_F(StatsCollectorTest, TrackObjectExistsWithoutUpdateStats) {
|
| // This test verifies that the empty track report exists in the returned stats
|
| // when StatsCollector::UpdateStats is called with ssrc stats.
|
| TEST_F(StatsCollectorTest, TrackAndSsrcObjectExistAfterUpdateSsrcStats) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1234,7 +1235,7 @@ TEST_F(StatsCollectorTest, TrackAndSsrcObjectExistAfterUpdateSsrcStats) {
|
| // This test verifies that an SSRC object has the identifier of a Transport
|
| // stats object, and that this transport stats object exists in stats.
|
| TEST_F(StatsCollectorTest, TransportObjectLinkedFromSsrcObject) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1300,7 +1301,7 @@ TEST_F(StatsCollectorTest, TransportObjectLinkedFromSsrcObject) {
|
| // This test verifies that a remote stats object will not be created for
|
| // an outgoing SSRC where remote stats are not returned.
|
| TEST_F(StatsCollectorTest, RemoteSsrcInfoIsAbsent) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
|
| // The transport_name known by the video channel.
|
| @@ -1322,7 +1323,7 @@ TEST_F(StatsCollectorTest, RemoteSsrcInfoIsAbsent) {
|
| // This test verifies that a remote stats object will be created for
|
| // an outgoing SSRC where stats are returned.
|
| TEST_F(StatsCollectorTest, RemoteSsrcInfoIsPresent) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1376,7 +1377,7 @@ TEST_F(StatsCollectorTest, RemoteSsrcInfoIsPresent) {
|
| // This test verifies that the empty track report exists in the returned stats
|
| // when StatsCollector::UpdateStats is called with ssrc stats.
|
| TEST_F(StatsCollectorTest, ReportsFromRemoteTrack) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1437,7 +1438,7 @@ TEST_F(StatsCollectorTest, ReportsFromRemoteTrack) {
|
| // This test verifies the Ice Candidate report should contain the correct
|
| // information from local/remote candidates.
|
| TEST_F(StatsCollectorTest, IceCandidateReport) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| StatsReports reports; // returned values.
|
|
|
| @@ -1571,7 +1572,7 @@ TEST_F(StatsCollectorTest, ChainlessCertificateReportsCreated) {
|
| // This test verifies that the stats are generated correctly when no
|
| // transport is present.
|
| TEST_F(StatsCollectorTest, NoTransport) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1630,7 +1631,7 @@ TEST_F(StatsCollectorTest, NoTransport) {
|
| // This test verifies that the stats are generated correctly when the transport
|
| // does not have any certificates.
|
| TEST_F(StatsCollectorTest, NoCertificates) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1695,7 +1696,7 @@ TEST_F(StatsCollectorTest, UnsupportedDigestIgnored) {
|
| // This test verifies that the audio/video related stats which are -1 initially
|
| // will be filtered out.
|
| TEST_F(StatsCollectorTest, FilterOutNegativeInitialValues) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1805,7 +1806,7 @@ TEST_F(StatsCollectorTest, FilterOutNegativeInitialValues) {
|
| // This test verifies that a local stats object can get statistics via
|
| // AudioTrackInterface::GetStats() method.
|
| TEST_F(StatsCollectorTest, GetStatsFromLocalAudioTrack) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1841,7 +1842,7 @@ TEST_F(StatsCollectorTest, GetStatsFromLocalAudioTrack) {
|
| // This test verifies that audio receive streams populate stats reports
|
| // correctly.
|
| TEST_F(StatsCollectorTest, GetStatsFromRemoteStream) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1871,7 +1872,7 @@ TEST_F(StatsCollectorTest, GetStatsFromRemoteStream) {
|
| // This test verifies that a local stats object won't update its statistics
|
| // after a RemoveLocalAudioTrack() call.
|
| TEST_F(StatsCollectorTest, GetStatsAfterRemoveAudioStream) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -1935,7 +1936,7 @@ TEST_F(StatsCollectorTest, GetStatsAfterRemoveAudioStream) {
|
| // This test verifies that when ongoing and incoming audio tracks are using
|
| // the same ssrc, they populate stats reports correctly.
|
| TEST_F(StatsCollectorTest, LocalAndRemoteTracksWithSameSsrc) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -2025,7 +2026,7 @@ TEST_F(StatsCollectorTest, LocalAndRemoteTracksWithSameSsrc) {
|
| // TODO(xians): Figure out if it is possible to encapsulate the setup and
|
| // avoid duplication of code in test cases.
|
| TEST_F(StatsCollectorTest, TwoLocalTracksWithSameSsrc) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -2079,7 +2080,7 @@ TEST_F(StatsCollectorTest, TwoLocalTracksWithSameSsrc) {
|
|
|
| // This test verifies that stats are correctly set in video send ssrc stats.
|
| TEST_F(StatsCollectorTest, VerifyVideoSendSsrcStats) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
| @@ -2127,7 +2128,7 @@ TEST_F(StatsCollectorTest, VerifyVideoSendSsrcStats) {
|
|
|
| // This test verifies that stats are correctly set in video receive ssrc stats.
|
| TEST_F(StatsCollectorTest, VerifyVideoReceiveSsrcStats) {
|
| - StatsCollectorForTest stats(&pc_);
|
| + StatsCollectorForTest stats(pc_);
|
|
|
| EXPECT_CALL(session_, GetLocalCertificate(_, _))
|
| .WillRepeatedly(Return(false));
|
|
|