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

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

Issue 2537343003: Removing "crypto_required" from MediaContentDescription. (Closed)
Patch Set: 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 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2014 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 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 using testing::DoAll; 42 using testing::DoAll;
43 using testing::Field; 43 using testing::Field;
44 using testing::Return; 44 using testing::Return;
45 using testing::ReturnNull; 45 using testing::ReturnNull;
46 using testing::ReturnRef; 46 using testing::ReturnRef;
47 using testing::SetArgPointee; 47 using testing::SetArgPointee;
48 using webrtc::PeerConnectionInterface; 48 using webrtc::PeerConnectionInterface;
49 using webrtc::StatsReport; 49 using webrtc::StatsReport;
50 using webrtc::StatsReports; 50 using webrtc::StatsReports;
51 51
52 namespace {
53 const bool kDefaultUseRtcpChannel = false;
54 const bool kDefaultSecureRequired = true;
55 }
56
52 namespace cricket { 57 namespace cricket {
53 58
54 class ChannelManager; 59 class ChannelManager;
55 60
56 } // namespace cricket 61 } // namespace cricket
57 62
58 namespace webrtc { 63 namespace webrtc {
59 64
60 namespace internal { 65 namespace internal {
61 // This value comes from openssl/tls1.h 66 // This value comes from openssl/tls1.h
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after
846 .WillRepeatedly(Return(nullptr)); 851 .WillRepeatedly(Return(nullptr));
847 852
848 const char kVideoChannelName[] = "video"; 853 const char kVideoChannelName[] = "video";
849 854
850 InitSessionStats(kVideoChannelName); 855 InitSessionStats(kVideoChannelName);
851 EXPECT_CALL(session_, GetTransportStats(_)) 856 EXPECT_CALL(session_, GetTransportStats(_))
852 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 857 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
853 Return(true))); 858 Return(true)));
854 859
855 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 860 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
856 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 861 cricket::VideoChannel video_channel(
857 media_channel, nullptr, kVideoChannelName, 862 worker_thread_, network_thread_, media_channel, nullptr,
858 false); 863 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
859 StatsReports reports; // returned values. 864 StatsReports reports; // returned values.
860 cricket::VideoSenderInfo video_sender_info; 865 cricket::VideoSenderInfo video_sender_info;
861 cricket::VideoMediaInfo stats_read; 866 cricket::VideoMediaInfo stats_read;
862 // The number of bytes must be larger than 0xFFFFFFFF for this test. 867 // The number of bytes must be larger than 0xFFFFFFFF for this test.
863 const int64_t kBytesSent = 12345678901234LL; 868 const int64_t kBytesSent = 12345678901234LL;
864 const std::string kBytesSentString("12345678901234"); 869 const std::string kBytesSentString("12345678901234");
865 870
866 AddOutgoingVideoTrackStats(); 871 AddOutgoingVideoTrackStats();
867 stats.AddStream(stream_); 872 stats.AddStream(stream_);
868 873
(...skipping 24 matching lines...) Expand all
893 .WillRepeatedly(Return(nullptr)); 898 .WillRepeatedly(Return(nullptr));
894 899
895 const char kVideoChannelName[] = "video"; 900 const char kVideoChannelName[] = "video";
896 901
897 InitSessionStats(kVideoChannelName); 902 InitSessionStats(kVideoChannelName);
898 EXPECT_CALL(session_, GetTransportStats(_)) 903 EXPECT_CALL(session_, GetTransportStats(_))
899 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 904 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
900 Return(true))); 905 Return(true)));
901 906
902 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 907 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
903 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 908 cricket::VideoChannel video_channel(
904 media_channel, nullptr, kVideoChannelName, 909 worker_thread_, network_thread_, media_channel, nullptr,
905 false); 910 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
906 911
907 StatsReports reports; // returned values. 912 StatsReports reports; // returned values.
908 cricket::VideoSenderInfo video_sender_info; 913 cricket::VideoSenderInfo video_sender_info;
909 cricket::VideoMediaInfo stats_read; 914 cricket::VideoMediaInfo stats_read;
910 // Set up an SSRC just to test that we get both kinds of stats back: SSRC and 915 // Set up an SSRC just to test that we get both kinds of stats back: SSRC and
911 // BWE. 916 // BWE.
912 const int64_t kBytesSent = 12345678901234LL; 917 const int64_t kBytesSent = 12345678901234LL;
913 const std::string kBytesSentString("12345678901234"); 918 const std::string kBytesSentString("12345678901234");
914 919
915 AddOutgoingVideoTrackStats(); 920 AddOutgoingVideoTrackStats();
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
969 reports, StatsReport::kStatsReportTypeSession, 2); 974 reports, StatsReport::kStatsReportTypeSession, 2);
970 EXPECT_EQ(NULL, session_report); 975 EXPECT_EQ(NULL, session_report);
971 } 976 }
972 977
973 // This test verifies that the empty track report exists in the returned stats 978 // This test verifies that the empty track report exists in the returned stats
974 // without calling StatsCollector::UpdateStats. 979 // without calling StatsCollector::UpdateStats.
975 TEST_F(StatsCollectorTest, TrackObjectExistsWithoutUpdateStats) { 980 TEST_F(StatsCollectorTest, TrackObjectExistsWithoutUpdateStats) {
976 StatsCollectorForTest stats(&pc_); 981 StatsCollectorForTest stats(&pc_);
977 982
978 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 983 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
979 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 984 cricket::VideoChannel video_channel(
980 media_channel, nullptr, "video", false); 985 worker_thread_, network_thread_, media_channel, nullptr, "video",
986 kDefaultUseRtcpChannel, kDefaultSecureRequired);
981 AddOutgoingVideoTrackStats(); 987 AddOutgoingVideoTrackStats();
982 stats.AddStream(stream_); 988 stats.AddStream(stream_);
983 989
984 // Verfies the existence of the track report. 990 // Verfies the existence of the track report.
985 StatsReports reports; 991 StatsReports reports;
986 stats.GetStats(NULL, &reports); 992 stats.GetStats(NULL, &reports);
987 EXPECT_EQ((size_t)1, reports.size()); 993 EXPECT_EQ((size_t)1, reports.size());
988 EXPECT_EQ(StatsReport::kStatsReportTypeTrack, reports[0]->type()); 994 EXPECT_EQ(StatsReport::kStatsReportTypeTrack, reports[0]->type());
989 EXPECT_EQ(0, reports[0]->timestamp()); 995 EXPECT_EQ(0, reports[0]->timestamp());
990 996
(...skipping 14 matching lines...) Expand all
1005 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1011 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1006 .WillRepeatedly(Return(nullptr)); 1012 .WillRepeatedly(Return(nullptr));
1007 1013
1008 const char kVideoChannelName[] = "video"; 1014 const char kVideoChannelName[] = "video";
1009 InitSessionStats(kVideoChannelName); 1015 InitSessionStats(kVideoChannelName);
1010 EXPECT_CALL(session_, GetTransportStats(_)) 1016 EXPECT_CALL(session_, GetTransportStats(_))
1011 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 1017 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
1012 Return(true))); 1018 Return(true)));
1013 1019
1014 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1020 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1015 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1021 cricket::VideoChannel video_channel(
1016 media_channel, nullptr, kVideoChannelName, 1022 worker_thread_, network_thread_, media_channel, nullptr,
1017 false); 1023 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1018 AddOutgoingVideoTrackStats(); 1024 AddOutgoingVideoTrackStats();
1019 stats.AddStream(stream_); 1025 stats.AddStream(stream_);
1020 1026
1021 // Constructs an ssrc stats update. 1027 // Constructs an ssrc stats update.
1022 cricket::VideoSenderInfo video_sender_info; 1028 cricket::VideoSenderInfo video_sender_info;
1023 cricket::VideoMediaInfo stats_read; 1029 cricket::VideoMediaInfo stats_read;
1024 const int64_t kBytesSent = 12345678901234LL; 1030 const int64_t kBytesSent = 12345678901234LL;
1025 1031
1026 // Construct a stats value to read. 1032 // Construct a stats value to read.
1027 video_sender_info.add_ssrc(1234); 1033 video_sender_info.add_ssrc(1234);
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
1074 StatsCollectorForTest stats(&pc_); 1080 StatsCollectorForTest stats(&pc_);
1075 1081
1076 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1082 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1077 .WillRepeatedly(Return(false)); 1083 .WillRepeatedly(Return(false));
1078 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1084 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1079 .WillRepeatedly(Return(nullptr)); 1085 .WillRepeatedly(Return(nullptr));
1080 1086
1081 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1087 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1082 // The transport_name known by the video channel. 1088 // The transport_name known by the video channel.
1083 const std::string kVcName("vcname"); 1089 const std::string kVcName("vcname");
1084 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1090 cricket::VideoChannel video_channel(
1085 media_channel, nullptr, kVcName, false); 1091 worker_thread_, network_thread_, media_channel, nullptr, kVcName,
1092 kDefaultUseRtcpChannel, kDefaultSecureRequired);
1086 AddOutgoingVideoTrackStats(); 1093 AddOutgoingVideoTrackStats();
1087 stats.AddStream(stream_); 1094 stats.AddStream(stream_);
1088 1095
1089 // Constructs an ssrc stats update. 1096 // Constructs an ssrc stats update.
1090 cricket::VideoSenderInfo video_sender_info; 1097 cricket::VideoSenderInfo video_sender_info;
1091 cricket::VideoMediaInfo stats_read; 1098 cricket::VideoMediaInfo stats_read;
1092 const int64_t kBytesSent = 12345678901234LL; 1099 const int64_t kBytesSent = 12345678901234LL;
1093 1100
1094 // Construct a stats value to read. 1101 // Construct a stats value to read.
1095 video_sender_info.add_ssrc(1234); 1102 video_sender_info.add_ssrc(1234);
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
1132 } 1139 }
1133 1140
1134 // This test verifies that a remote stats object will not be created for 1141 // This test verifies that a remote stats object will not be created for
1135 // an outgoing SSRC where remote stats are not returned. 1142 // an outgoing SSRC where remote stats are not returned.
1136 TEST_F(StatsCollectorTest, RemoteSsrcInfoIsAbsent) { 1143 TEST_F(StatsCollectorTest, RemoteSsrcInfoIsAbsent) {
1137 StatsCollectorForTest stats(&pc_); 1144 StatsCollectorForTest stats(&pc_);
1138 1145
1139 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1146 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1140 // The transport_name known by the video channel. 1147 // The transport_name known by the video channel.
1141 const std::string kVcName("vcname"); 1148 const std::string kVcName("vcname");
1142 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1149 cricket::VideoChannel video_channel(
1143 media_channel, nullptr, kVcName, false); 1150 worker_thread_, network_thread_, media_channel, nullptr, kVcName,
1151 kDefaultUseRtcpChannel, kDefaultSecureRequired);
1144 AddOutgoingVideoTrackStats(); 1152 AddOutgoingVideoTrackStats();
1145 stats.AddStream(stream_); 1153 stats.AddStream(stream_);
1146 1154
1147 stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard); 1155 stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
1148 StatsReports reports; 1156 StatsReports reports;
1149 stats.GetStats(NULL, &reports); 1157 stats.GetStats(NULL, &reports);
1150 const StatsReport* remote_report = FindNthReportByType(reports, 1158 const StatsReport* remote_report = FindNthReportByType(reports,
1151 StatsReport::kStatsReportTypeRemoteSsrc, 1); 1159 StatsReport::kStatsReportTypeRemoteSsrc, 1);
1152 EXPECT_TRUE(remote_report == NULL); 1160 EXPECT_TRUE(remote_report == NULL);
1153 } 1161 }
1154 1162
1155 // This test verifies that a remote stats object will be created for 1163 // This test verifies that a remote stats object will be created for
1156 // an outgoing SSRC where stats are returned. 1164 // an outgoing SSRC where stats are returned.
1157 TEST_F(StatsCollectorTest, RemoteSsrcInfoIsPresent) { 1165 TEST_F(StatsCollectorTest, RemoteSsrcInfoIsPresent) {
1158 StatsCollectorForTest stats(&pc_); 1166 StatsCollectorForTest stats(&pc_);
1159 1167
1160 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1168 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1161 .WillRepeatedly(Return(false)); 1169 .WillRepeatedly(Return(false));
1162 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1170 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1163 .WillRepeatedly(Return(nullptr)); 1171 .WillRepeatedly(Return(nullptr));
1164 1172
1165 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1173 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1166 // The transport_name known by the video channel. 1174 // The transport_name known by the video channel.
1167 const std::string kVcName("vcname"); 1175 const std::string kVcName("vcname");
1168 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1176 cricket::VideoChannel video_channel(
1169 media_channel, nullptr, kVcName, false); 1177 worker_thread_, network_thread_, media_channel, nullptr, kVcName,
1178 kDefaultUseRtcpChannel, kDefaultSecureRequired);
1170 AddOutgoingVideoTrackStats(); 1179 AddOutgoingVideoTrackStats();
1171 stats.AddStream(stream_); 1180 stats.AddStream(stream_);
1172 1181
1173 // Instruct the session to return stats containing the transport channel. 1182 // Instruct the session to return stats containing the transport channel.
1174 InitSessionStats(kVcName); 1183 InitSessionStats(kVcName);
1175 EXPECT_CALL(session_, GetTransportStats(_)) 1184 EXPECT_CALL(session_, GetTransportStats(_))
1176 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 1185 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
1177 Return(true))); 1186 Return(true)));
1178 1187
1179 // Constructs an ssrc stats update. 1188 // Constructs an ssrc stats update.
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1213 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1222 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1214 .WillRepeatedly(Return(nullptr)); 1223 .WillRepeatedly(Return(nullptr));
1215 1224
1216 const char kVideoChannelName[] = "video"; 1225 const char kVideoChannelName[] = "video";
1217 InitSessionStats(kVideoChannelName); 1226 InitSessionStats(kVideoChannelName);
1218 EXPECT_CALL(session_, GetTransportStats(_)) 1227 EXPECT_CALL(session_, GetTransportStats(_))
1219 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 1228 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
1220 Return(true))); 1229 Return(true)));
1221 1230
1222 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1231 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1223 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1232 cricket::VideoChannel video_channel(
1224 media_channel, nullptr, kVideoChannelName, 1233 worker_thread_, network_thread_, media_channel, nullptr,
1225 false); 1234 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1226 AddIncomingVideoTrackStats(); 1235 AddIncomingVideoTrackStats();
1227 stats.AddStream(stream_); 1236 stats.AddStream(stream_);
1228 1237
1229 // Constructs an ssrc stats update. 1238 // Constructs an ssrc stats update.
1230 cricket::VideoReceiverInfo video_receiver_info; 1239 cricket::VideoReceiverInfo video_receiver_info;
1231 cricket::VideoMediaInfo stats_read; 1240 cricket::VideoMediaInfo stats_read;
1232 const int64_t kNumOfPacketsConcealed = 54321; 1241 const int64_t kNumOfPacketsConcealed = 54321;
1233 1242
1234 // Construct a stats value to read. 1243 // Construct a stats value to read.
1235 video_receiver_info.add_ssrc(1234); 1244 video_receiver_info.add_ssrc(1234);
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
1526 StatsCollectorForTest stats(&pc_); 1535 StatsCollectorForTest stats(&pc_);
1527 1536
1528 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1537 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1529 .WillRepeatedly(Return(false)); 1538 .WillRepeatedly(Return(false));
1530 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1539 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1531 .WillRepeatedly(Return(nullptr)); 1540 .WillRepeatedly(Return(nullptr));
1532 1541
1533 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1542 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1534 // The transport_name known by the voice channel. 1543 // The transport_name known by the voice channel.
1535 const std::string kVcName("vcname"); 1544 const std::string kVcName("vcname");
1536 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1545 cricket::VoiceChannel voice_channel(
1537 media_engine_, media_channel, nullptr, 1546 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1538 kVcName, false); 1547 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1539 1548
1540 // Create a local stream with a local audio track and adds it to the stats. 1549 // Create a local stream with a local audio track and adds it to the stats.
1541 if (stream_ == NULL) 1550 if (stream_ == NULL)
1542 stream_ = webrtc::MediaStream::Create("streamlabel"); 1551 stream_ = webrtc::MediaStream::Create("streamlabel");
1543 1552
1544 rtc::scoped_refptr<FakeAudioTrackWithInitValue> local_track( 1553 rtc::scoped_refptr<FakeAudioTrackWithInitValue> local_track(
1545 new rtc::RefCountedObject<FakeAudioTrackWithInitValue>(kLocalTrackId)); 1554 new rtc::RefCountedObject<FakeAudioTrackWithInitValue>(kLocalTrackId));
1546 stream_->AddTrack(local_track); 1555 stream_->AddTrack(local_track);
1547 EXPECT_CALL(session_, GetLocalTrackIdBySsrc(kSsrcOfTrack, _)) 1556 EXPECT_CALL(session_, GetLocalTrackIdBySsrc(kSsrcOfTrack, _))
1548 .WillOnce(DoAll(SetArgPointee<1>(kLocalTrackId), Return(true))); 1557 .WillOnce(DoAll(SetArgPointee<1>(kLocalTrackId), Return(true)));
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
1633 StatsCollectorForTest stats(&pc_); 1642 StatsCollectorForTest stats(&pc_);
1634 1643
1635 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1644 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1636 .WillRepeatedly(Return(false)); 1645 .WillRepeatedly(Return(false));
1637 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1646 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1638 .WillRepeatedly(Return(nullptr)); 1647 .WillRepeatedly(Return(nullptr));
1639 1648
1640 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1649 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1641 // The transport_name known by the voice channel. 1650 // The transport_name known by the voice channel.
1642 const std::string kVcName("vcname"); 1651 const std::string kVcName("vcname");
1643 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1652 cricket::VoiceChannel voice_channel(
1644 media_engine_, media_channel, nullptr, 1653 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1645 kVcName, false); 1654 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1646 AddOutgoingAudioTrackStats(); 1655 AddOutgoingAudioTrackStats();
1647 stats.AddStream(stream_); 1656 stats.AddStream(stream_);
1648 stats.AddLocalAudioTrack(audio_track_, kSsrcOfTrack); 1657 stats.AddLocalAudioTrack(audio_track_, kSsrcOfTrack);
1649 1658
1650 cricket::VoiceSenderInfo voice_sender_info; 1659 cricket::VoiceSenderInfo voice_sender_info;
1651 InitVoiceSenderInfo(&voice_sender_info); 1660 InitVoiceSenderInfo(&voice_sender_info);
1652 1661
1653 cricket::VoiceMediaInfo stats_read; 1662 cricket::VoiceMediaInfo stats_read;
1654 StatsReports reports; // returned values. 1663 StatsReports reports; // returned values.
1655 SetupAndVerifyAudioTrackStats( 1664 SetupAndVerifyAudioTrackStats(
(...skipping 13 matching lines...) Expand all
1669 StatsCollectorForTest stats(&pc_); 1678 StatsCollectorForTest stats(&pc_);
1670 1679
1671 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1680 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1672 .WillRepeatedly(Return(false)); 1681 .WillRepeatedly(Return(false));
1673 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1682 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1674 .WillRepeatedly(Return(nullptr)); 1683 .WillRepeatedly(Return(nullptr));
1675 1684
1676 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1685 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1677 // The transport_name known by the voice channel. 1686 // The transport_name known by the voice channel.
1678 const std::string kVcName("vcname"); 1687 const std::string kVcName("vcname");
1679 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1688 cricket::VoiceChannel voice_channel(
1680 media_engine_, media_channel, nullptr, 1689 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1681 kVcName, false); 1690 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1682 AddIncomingAudioTrackStats(); 1691 AddIncomingAudioTrackStats();
1683 stats.AddStream(stream_); 1692 stats.AddStream(stream_);
1684 1693
1685 cricket::VoiceReceiverInfo voice_receiver_info; 1694 cricket::VoiceReceiverInfo voice_receiver_info;
1686 InitVoiceReceiverInfo(&voice_receiver_info); 1695 InitVoiceReceiverInfo(&voice_receiver_info);
1687 voice_receiver_info.codec_name = "fake_codec"; 1696 voice_receiver_info.codec_name = "fake_codec";
1688 1697
1689 cricket::VoiceMediaInfo stats_read; 1698 cricket::VoiceMediaInfo stats_read;
1690 StatsReports reports; // returned values. 1699 StatsReports reports; // returned values.
1691 SetupAndVerifyAudioTrackStats( 1700 SetupAndVerifyAudioTrackStats(
1692 audio_track_.get(), stream_.get(), &stats, &voice_channel, kVcName, 1701 audio_track_.get(), stream_.get(), &stats, &voice_channel, kVcName,
1693 media_channel, NULL, &voice_receiver_info, &stats_read, &reports); 1702 media_channel, NULL, &voice_receiver_info, &stats_read, &reports);
1694 } 1703 }
1695 1704
1696 // This test verifies that a local stats object won't update its statistics 1705 // This test verifies that a local stats object won't update its statistics
1697 // after a RemoveLocalAudioTrack() call. 1706 // after a RemoveLocalAudioTrack() call.
1698 TEST_F(StatsCollectorTest, GetStatsAfterRemoveAudioStream) { 1707 TEST_F(StatsCollectorTest, GetStatsAfterRemoveAudioStream) {
1699 StatsCollectorForTest stats(&pc_); 1708 StatsCollectorForTest stats(&pc_);
1700 1709
1701 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1710 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1702 .WillRepeatedly(Return(false)); 1711 .WillRepeatedly(Return(false));
1703 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1712 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1704 .WillRepeatedly(Return(nullptr)); 1713 .WillRepeatedly(Return(nullptr));
1705 1714
1706 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1715 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1707 // The transport_name known by the voice channel. 1716 // The transport_name known by the voice channel.
1708 const std::string kVcName("vcname"); 1717 const std::string kVcName("vcname");
1709 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1718 cricket::VoiceChannel voice_channel(
1710 media_engine_, media_channel, nullptr, 1719 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1711 kVcName, false); 1720 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1712 AddOutgoingAudioTrackStats(); 1721 AddOutgoingAudioTrackStats();
1713 stats.AddStream(stream_); 1722 stats.AddStream(stream_);
1714 stats.AddLocalAudioTrack(audio_track_.get(), kSsrcOfTrack); 1723 stats.AddLocalAudioTrack(audio_track_.get(), kSsrcOfTrack);
1715 1724
1716 // Instruct the session to return stats containing the transport channel. 1725 // Instruct the session to return stats containing the transport channel.
1717 InitSessionStats(kVcName); 1726 InitSessionStats(kVcName);
1718 EXPECT_CALL(session_, GetTransportStats(_)) 1727 EXPECT_CALL(session_, GetTransportStats(_))
1719 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), 1728 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_),
1720 Return(true))); 1729 Return(true)));
1721 1730
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1761 StatsCollectorForTest stats(&pc_); 1770 StatsCollectorForTest stats(&pc_);
1762 1771
1763 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1772 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1764 .WillRepeatedly(Return(false)); 1773 .WillRepeatedly(Return(false));
1765 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1774 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1766 .WillRepeatedly(Return(nullptr)); 1775 .WillRepeatedly(Return(nullptr));
1767 1776
1768 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1777 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1769 // The transport_name known by the voice channel. 1778 // The transport_name known by the voice channel.
1770 const std::string kVcName("vcname"); 1779 const std::string kVcName("vcname");
1771 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1780 cricket::VoiceChannel voice_channel(
1772 media_engine_, media_channel, nullptr, 1781 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1773 kVcName, false); 1782 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1774 1783
1775 // Create a local stream with a local audio track and adds it to the stats. 1784 // Create a local stream with a local audio track and adds it to the stats.
1776 AddOutgoingAudioTrackStats(); 1785 AddOutgoingAudioTrackStats();
1777 stats.AddStream(stream_); 1786 stats.AddStream(stream_);
1778 stats.AddLocalAudioTrack(audio_track_.get(), kSsrcOfTrack); 1787 stats.AddLocalAudioTrack(audio_track_.get(), kSsrcOfTrack);
1779 1788
1780 // Create a remote stream with a remote audio track and adds it to the stats. 1789 // Create a remote stream with a remote audio track and adds it to the stats.
1781 rtc::scoped_refptr<webrtc::MediaStream> remote_stream( 1790 rtc::scoped_refptr<webrtc::MediaStream> remote_stream(
1782 webrtc::MediaStream::Create("remotestreamlabel")); 1791 webrtc::MediaStream::Create("remotestreamlabel"));
1783 rtc::scoped_refptr<FakeAudioTrack> remote_track( 1792 rtc::scoped_refptr<FakeAudioTrack> remote_track(
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
1849 StatsCollectorForTest stats(&pc_); 1858 StatsCollectorForTest stats(&pc_);
1850 1859
1851 EXPECT_CALL(session_, GetLocalCertificate(_, _)) 1860 EXPECT_CALL(session_, GetLocalCertificate(_, _))
1852 .WillRepeatedly(Return(false)); 1861 .WillRepeatedly(Return(false));
1853 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1862 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1854 .WillRepeatedly(Return(nullptr)); 1863 .WillRepeatedly(Return(nullptr));
1855 1864
1856 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel(); 1865 MockVoiceMediaChannel* media_channel = new MockVoiceMediaChannel();
1857 // The transport_name known by the voice channel. 1866 // The transport_name known by the voice channel.
1858 const std::string kVcName("vcname"); 1867 const std::string kVcName("vcname");
1859 cricket::VoiceChannel voice_channel(worker_thread_, network_thread_, 1868 cricket::VoiceChannel voice_channel(
1860 media_engine_, media_channel, nullptr, 1869 worker_thread_, network_thread_, media_engine_, media_channel, nullptr,
1861 kVcName, false); 1870 kVcName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1862 1871
1863 // Create a local stream with a local audio track and adds it to the stats. 1872 // Create a local stream with a local audio track and adds it to the stats.
1864 AddOutgoingAudioTrackStats(); 1873 AddOutgoingAudioTrackStats();
1865 stats.AddStream(stream_); 1874 stats.AddStream(stream_);
1866 stats.AddLocalAudioTrack(audio_track_, kSsrcOfTrack); 1875 stats.AddLocalAudioTrack(audio_track_, kSsrcOfTrack);
1867 1876
1868 cricket::VoiceSenderInfo voice_sender_info; 1877 cricket::VoiceSenderInfo voice_sender_info;
1869 voice_sender_info.add_ssrc(kSsrcOfTrack); 1878 voice_sender_info.add_ssrc(kSsrcOfTrack);
1870 1879
1871 cricket::VoiceMediaInfo stats_read; 1880 cricket::VoiceMediaInfo stats_read;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1906 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1915 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1907 .WillRepeatedly(Return(nullptr)); 1916 .WillRepeatedly(Return(nullptr));
1908 1917
1909 const char kVideoChannelName[] = "video"; 1918 const char kVideoChannelName[] = "video";
1910 1919
1911 InitSessionStats(kVideoChannelName); 1920 InitSessionStats(kVideoChannelName);
1912 EXPECT_CALL(session_, GetTransportStats(_)) 1921 EXPECT_CALL(session_, GetTransportStats(_))
1913 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), Return(true))); 1922 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), Return(true)));
1914 1923
1915 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1924 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1916 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1925 cricket::VideoChannel video_channel(
1917 media_channel, nullptr, kVideoChannelName, 1926 worker_thread_, network_thread_, media_channel, nullptr,
1918 false); 1927 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1919 StatsReports reports; // returned values. 1928 StatsReports reports; // returned values.
1920 cricket::VideoSenderInfo video_sender_info; 1929 cricket::VideoSenderInfo video_sender_info;
1921 cricket::VideoMediaInfo stats_read; 1930 cricket::VideoMediaInfo stats_read;
1922 1931
1923 AddOutgoingVideoTrackStats(); 1932 AddOutgoingVideoTrackStats();
1924 stats.AddStream(stream_); 1933 stats.AddStream(stream_);
1925 1934
1926 // Construct a stats value to read. 1935 // Construct a stats value to read.
1927 video_sender_info.add_ssrc(1234); 1936 video_sender_info.add_ssrc(1234);
1928 video_sender_info.frames_encoded = 10; 1937 video_sender_info.frames_encoded = 10;
(...skipping 22 matching lines...) Expand all
1951 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_)) 1960 EXPECT_CALL(session_, GetRemoteSSLCertificate_ReturnsRawPointer(_))
1952 .WillRepeatedly(Return(nullptr)); 1961 .WillRepeatedly(Return(nullptr));
1953 1962
1954 const char kVideoChannelName[] = "video"; 1963 const char kVideoChannelName[] = "video";
1955 1964
1956 InitSessionStats(kVideoChannelName); 1965 InitSessionStats(kVideoChannelName);
1957 EXPECT_CALL(session_, GetTransportStats(_)) 1966 EXPECT_CALL(session_, GetTransportStats(_))
1958 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), Return(true))); 1967 .WillRepeatedly(DoAll(SetArgPointee<0>(session_stats_), Return(true)));
1959 1968
1960 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel(); 1969 MockVideoMediaChannel* media_channel = new MockVideoMediaChannel();
1961 cricket::VideoChannel video_channel(worker_thread_, network_thread_, 1970 cricket::VideoChannel video_channel(
1962 media_channel, nullptr, kVideoChannelName, 1971 worker_thread_, network_thread_, media_channel, nullptr,
1963 false); 1972 kVideoChannelName, kDefaultUseRtcpChannel, kDefaultSecureRequired);
1964 StatsReports reports; // returned values. 1973 StatsReports reports; // returned values.
1965 cricket::VideoReceiverInfo video_receiver_info; 1974 cricket::VideoReceiverInfo video_receiver_info;
1966 cricket::VideoMediaInfo stats_read; 1975 cricket::VideoMediaInfo stats_read;
1967 1976
1968 AddIncomingVideoTrackStats(); 1977 AddIncomingVideoTrackStats();
1969 stats.AddStream(stream_); 1978 stats.AddStream(stream_);
1970 1979
1971 // Construct a stats value to read. 1980 // Construct a stats value to read.
1972 video_receiver_info.add_ssrc(1234); 1981 video_receiver_info.add_ssrc(1234);
1973 video_receiver_info.frames_decoded = 10; 1982 video_receiver_info.frames_decoded = 10;
1974 stats_read.receivers.push_back(video_receiver_info); 1983 stats_read.receivers.push_back(video_receiver_info);
1975 1984
1976 EXPECT_CALL(session_, video_channel()).WillRepeatedly(Return(&video_channel)); 1985 EXPECT_CALL(session_, video_channel()).WillRepeatedly(Return(&video_channel));
1977 EXPECT_CALL(session_, voice_channel()).WillRepeatedly(ReturnNull()); 1986 EXPECT_CALL(session_, voice_channel()).WillRepeatedly(ReturnNull());
1978 EXPECT_CALL(*media_channel, GetStats(_)) 1987 EXPECT_CALL(*media_channel, GetStats(_))
1979 .WillOnce(DoAll(SetArgPointee<0>(stats_read), Return(true))); 1988 .WillOnce(DoAll(SetArgPointee<0>(stats_read), Return(true)));
1980 stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard); 1989 stats.UpdateStats(PeerConnectionInterface::kStatsOutputLevelStandard);
1981 stats.GetStats(NULL, &reports); 1990 stats.GetStats(NULL, &reports);
1982 EXPECT_EQ(rtc::ToString(video_receiver_info.frames_decoded), 1991 EXPECT_EQ(rtc::ToString(video_receiver_info.frames_decoded),
1983 ExtractSsrcStatsValue(reports, 1992 ExtractSsrcStatsValue(reports,
1984 StatsReport::kStatsValueNameFramesDecoded)); 1993 StatsReport::kStatsValueNameFramesDecoded));
1985 } 1994 }
1986 1995
1987 } // namespace webrtc 1996 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698