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 521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
532 EXPECT_EQ(*cert_stats.base64_certificate, cert_info.pems[i]); | 532 EXPECT_EQ(*cert_stats.base64_certificate, cert_info.pems[i]); |
533 if (i + 1 < cert_info.fingerprints.size()) { | 533 if (i + 1 < cert_info.fingerprints.size()) { |
534 EXPECT_EQ(*cert_stats.issuer_certificate_id, | 534 EXPECT_EQ(*cert_stats.issuer_certificate_id, |
535 "RTCCertificate_" + cert_info.fingerprints[i + 1]); | 535 "RTCCertificate_" + cert_info.fingerprints[i + 1]); |
536 } else { | 536 } else { |
537 EXPECT_FALSE(cert_stats.issuer_certificate_id.is_defined()); | 537 EXPECT_FALSE(cert_stats.issuer_certificate_id.is_defined()); |
538 } | 538 } |
539 } | 539 } |
540 } | 540 } |
541 | 541 |
542 void ExpectReportContainsDataChannel( | |
543 const rtc::scoped_refptr<const RTCStatsReport>& report, | |
544 const DataChannel& data_channel) { | |
545 const RTCStats* stats = report->Get("RTCDataChannel_" + | |
546 rtc::ToString<>(data_channel.id())); | |
547 EXPECT_TRUE(stats); | |
548 const RTCDataChannelStats& data_channel_stats = | |
549 stats->cast_to<const RTCDataChannelStats>(); | |
550 EXPECT_EQ(*data_channel_stats.label, data_channel.label()); | |
551 EXPECT_EQ(*data_channel_stats.protocol, data_channel.protocol()); | |
552 EXPECT_EQ(*data_channel_stats.datachannelid, data_channel.id()); | |
553 EXPECT_EQ(*data_channel_stats.state, | |
554 DataStateToRTCDataChannelStateForTesting(data_channel.state())); | |
555 EXPECT_EQ(*data_channel_stats.messages_sent, data_channel.messages_sent()); | |
556 EXPECT_EQ(*data_channel_stats.bytes_sent, data_channel.bytes_sent()); | |
557 EXPECT_EQ(*data_channel_stats.messages_received, | |
558 data_channel.messages_received()); | |
559 EXPECT_EQ(*data_channel_stats.bytes_received, | |
560 data_channel.bytes_received()); | |
561 } | |
562 | |
563 protected: | 542 protected: |
564 rtc::scoped_refptr<RTCStatsCollectorTestHelper> test_; | 543 rtc::scoped_refptr<RTCStatsCollectorTestHelper> test_; |
565 rtc::scoped_refptr<RTCStatsCollector> collector_; | 544 rtc::scoped_refptr<RTCStatsCollector> collector_; |
566 }; | 545 }; |
567 | 546 |
568 TEST_F(RTCStatsCollectorTest, SingleCallback) { | 547 TEST_F(RTCStatsCollectorTest, SingleCallback) { |
569 rtc::scoped_refptr<const RTCStatsReport> result; | 548 rtc::scoped_refptr<const RTCStatsReport> result; |
570 collector_->GetStatsReport(RTCStatsObtainer::Create(&result)); | 549 collector_->GetStatsReport(RTCStatsObtainer::Create(&result)); |
571 EXPECT_TRUE_WAIT(result, kGetStatsReportTimeoutMs); | 550 EXPECT_TRUE_WAIT(result, kGetStatsReportTimeoutMs); |
572 } | 551 } |
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
877 return static_cast<rtc::SSLCertificate*>(nullptr); | 856 return static_cast<rtc::SSLCertificate*>(nullptr); |
878 })); | 857 })); |
879 | 858 |
880 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 859 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
881 ExpectReportContainsCertificateInfo(report, *local_certinfo.get()); | 860 ExpectReportContainsCertificateInfo(report, *local_certinfo.get()); |
882 ExpectReportContainsCertificateInfo(report, *remote_certinfo.get()); | 861 ExpectReportContainsCertificateInfo(report, *remote_certinfo.get()); |
883 } | 862 } |
884 | 863 |
885 TEST_F(RTCStatsCollectorTest, CollectRTCDataChannelStats) { | 864 TEST_F(RTCStatsCollectorTest, CollectRTCDataChannelStats) { |
886 test_->data_channels().push_back( | 865 test_->data_channels().push_back( |
887 new MockDataChannel(0, DataChannelInterface::kConnecting)); | 866 new MockDataChannel( |
867 0, "MockDataChannel0", DataChannelInterface::kConnecting, "udp", | |
868 1, 2, 3, 4)); | |
888 test_->data_channels().push_back( | 869 test_->data_channels().push_back( |
889 new MockDataChannel(1, DataChannelInterface::kOpen)); | 870 new MockDataChannel( |
871 1, "MockDataChannel1", DataChannelInterface::kOpen, "tcp", | |
872 5, 6, 7, 8)); | |
890 test_->data_channels().push_back( | 873 test_->data_channels().push_back( |
891 new MockDataChannel(2, DataChannelInterface::kClosing)); | 874 new MockDataChannel( |
875 2, "MockDataChannel2", DataChannelInterface::kClosing, "udp", | |
876 9, 10, 11, 12)); | |
892 test_->data_channels().push_back( | 877 test_->data_channels().push_back( |
893 new MockDataChannel(3, DataChannelInterface::kClosed)); | 878 new MockDataChannel( |
879 3, "MockDataChannel3", DataChannelInterface::kClosed, "tcp", | |
880 13, 14, 15, 16)); | |
894 | 881 |
895 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 882 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
896 ExpectReportContainsDataChannel(report, *test_->data_channels()[0]); | |
897 ExpectReportContainsDataChannel(report, *test_->data_channels()[1]); | |
898 ExpectReportContainsDataChannel(report, *test_->data_channels()[2]); | |
899 ExpectReportContainsDataChannel(report, *test_->data_channels()[3]); | |
900 | 883 |
901 test_->data_channels().clear(); | 884 RTCDataChannelStats expected_data_channel0( |
902 test_->data_channels().push_back( | 885 "RTCDataChannel_0", report->timestamp_us()); |
903 new MockDataChannel(0, DataChannelInterface::kConnecting, | 886 expected_data_channel0.label = "MockDataChannel0"; |
904 1, 2, 3, 4)); | 887 expected_data_channel0.protocol = "udp"; |
905 test_->data_channels().push_back( | 888 expected_data_channel0.datachannelid = 0; |
906 new MockDataChannel(1, DataChannelInterface::kOpen, | 889 expected_data_channel0.state = "connecting"; |
907 5, 6, 7, 8)); | 890 expected_data_channel0.messages_sent = 1; |
908 test_->data_channels().push_back( | 891 expected_data_channel0.bytes_sent = 2; |
909 new MockDataChannel(2, DataChannelInterface::kClosing, | 892 expected_data_channel0.messages_received = 3; |
910 9, 10, 11, 12)); | 893 expected_data_channel0.bytes_received = 4; |
911 test_->data_channels().push_back( | 894 ASSERT_TRUE(report->Get(expected_data_channel0.id())); |
912 new MockDataChannel(3, DataChannelInterface::kClosed, | 895 EXPECT_EQ(expected_data_channel0, |
913 13, 14, 15, 16)); | 896 report->Get(expected_data_channel0.id())->cast_to< |
897 RTCDataChannelStats>()); | |
914 | 898 |
915 collector_->ClearCachedStatsReport(); | 899 RTCDataChannelStats expected_data_channel1( |
916 report = GetStatsReport(); | 900 "RTCDataChannel_1", report->timestamp_us()); |
917 ExpectReportContainsDataChannel(report, *test_->data_channels()[0]); | 901 expected_data_channel1.label = "MockDataChannel1"; |
918 ExpectReportContainsDataChannel(report, *test_->data_channels()[1]); | 902 expected_data_channel1.protocol = "tcp"; |
919 ExpectReportContainsDataChannel(report, *test_->data_channels()[2]); | 903 expected_data_channel1.datachannelid = 1; |
920 ExpectReportContainsDataChannel(report, *test_->data_channels()[3]); | 904 expected_data_channel1.state = "open"; |
905 expected_data_channel1.messages_sent = 5; | |
906 expected_data_channel1.bytes_sent = 6; | |
907 expected_data_channel1.messages_received = 7; | |
908 expected_data_channel1.bytes_received = 8; | |
909 ASSERT_TRUE(report->Get(expected_data_channel1.id())); | |
910 EXPECT_EQ(expected_data_channel1, | |
911 report->Get(expected_data_channel1.id())->cast_to< | |
912 RTCDataChannelStats>()); | |
913 | |
914 RTCDataChannelStats expected_data_channel2( | |
915 "RTCDataChannel_2", report->timestamp_us()); | |
916 expected_data_channel2.label = "MockDataChannel2"; | |
917 expected_data_channel2.protocol = "udp"; | |
918 expected_data_channel2.datachannelid = 2; | |
919 expected_data_channel2.state = "closing"; | |
920 expected_data_channel2.messages_sent = 9; | |
921 expected_data_channel2.bytes_sent = 10; | |
922 expected_data_channel2.messages_received = 11; | |
923 expected_data_channel2.bytes_received = 12; | |
924 ASSERT_TRUE(report->Get(expected_data_channel2.id())); | |
925 EXPECT_EQ(expected_data_channel2, | |
926 report->Get(expected_data_channel2.id())->cast_to< | |
927 RTCDataChannelStats>()); | |
928 | |
929 RTCDataChannelStats expected_data_channel3( | |
930 "RTCDataChannel_3", report->timestamp_us()); | |
931 expected_data_channel3.label = "MockDataChannel3"; | |
932 expected_data_channel3.protocol = "tcp"; | |
933 expected_data_channel3.datachannelid = 3 ; | |
hbos
2016/12/20 17:32:10
nit: 3;
| |
934 expected_data_channel3.state = "closed"; | |
935 expected_data_channel3.messages_sent = 13; | |
936 expected_data_channel3.bytes_sent = 14; | |
937 expected_data_channel3.messages_received = 15; | |
938 expected_data_channel3.bytes_received = 16; | |
939 ASSERT_TRUE(report->Get(expected_data_channel3.id())); | |
940 EXPECT_EQ(expected_data_channel3, | |
941 report->Get(expected_data_channel3.id())->cast_to< | |
942 RTCDataChannelStats>()); | |
921 } | 943 } |
922 | 944 |
923 TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { | 945 TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { |
924 // Candidates in the first transport stats. | 946 // Candidates in the first transport stats. |
925 std::unique_ptr<cricket::Candidate> a_local_host = CreateFakeCandidate( | 947 std::unique_ptr<cricket::Candidate> a_local_host = CreateFakeCandidate( |
926 "1.2.3.4", 5, | 948 "1.2.3.4", 5, |
927 "a_local_host's protocol", | 949 "a_local_host's protocol", |
928 cricket::LOCAL_PORT_TYPE, | 950 cricket::LOCAL_PORT_TYPE, |
929 0); | 951 0); |
930 std::unique_ptr<cricket::Candidate> a_remote_srflx = CreateFakeCandidate( | 952 std::unique_ptr<cricket::Candidate> a_remote_srflx = CreateFakeCandidate( |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1046 expected_pair.writable = true; | 1068 expected_pair.writable = true; |
1047 expected_pair.bytes_sent = 42; | 1069 expected_pair.bytes_sent = 42; |
1048 expected_pair.bytes_received = 1234; | 1070 expected_pair.bytes_received = 1234; |
1049 expected_pair.current_round_trip_time = 1.337; | 1071 expected_pair.current_round_trip_time = 1.337; |
1050 expected_pair.requests_received = 2020; | 1072 expected_pair.requests_received = 2020; |
1051 expected_pair.requests_sent = 2000; | 1073 expected_pair.requests_sent = 2000; |
1052 expected_pair.responses_received = 4321; | 1074 expected_pair.responses_received = 4321; |
1053 expected_pair.responses_sent = 1000; | 1075 expected_pair.responses_sent = 1000; |
1054 expected_pair.consent_requests_sent = (2020 - 2000); | 1076 expected_pair.consent_requests_sent = (2020 - 2000); |
1055 | 1077 |
1056 EXPECT_TRUE(report->Get(expected_pair.id())); | 1078 ASSERT_TRUE(report->Get(expected_pair.id())); |
1057 EXPECT_EQ( | 1079 EXPECT_EQ( |
1058 expected_pair, | 1080 expected_pair, |
1059 report->Get(expected_pair.id())->cast_to<RTCIceCandidatePairStats>()); | 1081 report->Get(expected_pair.id())->cast_to<RTCIceCandidatePairStats>()); |
1060 | 1082 |
1061 EXPECT_TRUE(report->Get(*expected_pair.local_candidate_id)); | 1083 ASSERT_TRUE(report->Get(*expected_pair.local_candidate_id)); |
1062 ExpectReportContainsCandidate(report, connection_info.local_candidate, true); | 1084 ExpectReportContainsCandidate(report, connection_info.local_candidate, true); |
1063 EXPECT_TRUE(report->Get(*expected_pair.remote_candidate_id)); | 1085 ASSERT_TRUE(report->Get(*expected_pair.remote_candidate_id)); |
1064 ExpectReportContainsCandidate(report, connection_info.remote_candidate, | 1086 ExpectReportContainsCandidate(report, connection_info.remote_candidate, |
1065 false); | 1087 false); |
1066 } | 1088 } |
1067 | 1089 |
1068 TEST_F(RTCStatsCollectorTest, CollectRTCPeerConnectionStats) { | 1090 TEST_F(RTCStatsCollectorTest, CollectRTCPeerConnectionStats) { |
1069 { | 1091 { |
1070 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1092 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1071 RTCPeerConnectionStats expected("RTCPeerConnection", | 1093 RTCPeerConnectionStats expected("RTCPeerConnection", |
1072 report->timestamp_us()); | 1094 report->timestamp_us()); |
1073 expected.data_channels_opened = 0; | 1095 expected.data_channels_opened = 0; |
1074 expected.data_channels_closed = 0; | 1096 expected.data_channels_closed = 0; |
1075 EXPECT_TRUE(report->Get("RTCPeerConnection")); | 1097 ASSERT_TRUE(report->Get("RTCPeerConnection")); |
1076 EXPECT_EQ(expected, | 1098 EXPECT_EQ(expected, |
1077 report->Get("RTCPeerConnection")->cast_to< | 1099 report->Get("RTCPeerConnection")->cast_to< |
1078 RTCPeerConnectionStats>()); | 1100 RTCPeerConnectionStats>()); |
1079 } | 1101 } |
1080 | 1102 |
1081 rtc::scoped_refptr<DataChannel> dummy_channel_a = DataChannel::Create( | 1103 rtc::scoped_refptr<DataChannel> dummy_channel_a = DataChannel::Create( |
1082 nullptr, cricket::DCT_NONE, "DummyChannelA", InternalDataChannelInit()); | 1104 nullptr, cricket::DCT_NONE, "DummyChannelA", InternalDataChannelInit()); |
1083 test_->pc().SignalDataChannelCreated(dummy_channel_a.get()); | 1105 test_->pc().SignalDataChannelCreated(dummy_channel_a.get()); |
1084 rtc::scoped_refptr<DataChannel> dummy_channel_b = DataChannel::Create( | 1106 rtc::scoped_refptr<DataChannel> dummy_channel_b = DataChannel::Create( |
1085 nullptr, cricket::DCT_NONE, "DummyChannelB", InternalDataChannelInit()); | 1107 nullptr, cricket::DCT_NONE, "DummyChannelB", InternalDataChannelInit()); |
1086 test_->pc().SignalDataChannelCreated(dummy_channel_b.get()); | 1108 test_->pc().SignalDataChannelCreated(dummy_channel_b.get()); |
1087 | 1109 |
1088 dummy_channel_a->SignalOpened(dummy_channel_a.get()); | 1110 dummy_channel_a->SignalOpened(dummy_channel_a.get()); |
1089 // Closing a channel that is not opened should not affect the counts. | 1111 // Closing a channel that is not opened should not affect the counts. |
1090 dummy_channel_b->SignalClosed(dummy_channel_b.get()); | 1112 dummy_channel_b->SignalClosed(dummy_channel_b.get()); |
1091 | 1113 |
1092 { | 1114 { |
1093 collector_->ClearCachedStatsReport(); | 1115 collector_->ClearCachedStatsReport(); |
1094 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1116 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1095 RTCPeerConnectionStats expected("RTCPeerConnection", | 1117 RTCPeerConnectionStats expected("RTCPeerConnection", |
1096 report->timestamp_us()); | 1118 report->timestamp_us()); |
1097 expected.data_channels_opened = 1; | 1119 expected.data_channels_opened = 1; |
1098 expected.data_channels_closed = 0; | 1120 expected.data_channels_closed = 0; |
1099 EXPECT_TRUE(report->Get("RTCPeerConnection")); | 1121 ASSERT_TRUE(report->Get("RTCPeerConnection")); |
1100 EXPECT_EQ(expected, | 1122 EXPECT_EQ(expected, |
1101 report->Get("RTCPeerConnection")->cast_to< | 1123 report->Get("RTCPeerConnection")->cast_to< |
1102 RTCPeerConnectionStats>()); | 1124 RTCPeerConnectionStats>()); |
1103 } | 1125 } |
1104 | 1126 |
1105 dummy_channel_b->SignalOpened(dummy_channel_b.get()); | 1127 dummy_channel_b->SignalOpened(dummy_channel_b.get()); |
1106 dummy_channel_b->SignalClosed(dummy_channel_b.get()); | 1128 dummy_channel_b->SignalClosed(dummy_channel_b.get()); |
1107 | 1129 |
1108 { | 1130 { |
1109 collector_->ClearCachedStatsReport(); | 1131 collector_->ClearCachedStatsReport(); |
1110 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1132 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1111 RTCPeerConnectionStats expected("RTCPeerConnection", | 1133 RTCPeerConnectionStats expected("RTCPeerConnection", |
1112 report->timestamp_us()); | 1134 report->timestamp_us()); |
1113 expected.data_channels_opened = 2; | 1135 expected.data_channels_opened = 2; |
1114 expected.data_channels_closed = 1; | 1136 expected.data_channels_closed = 1; |
1115 EXPECT_TRUE(report->Get("RTCPeerConnection")); | 1137 ASSERT_TRUE(report->Get("RTCPeerConnection")); |
1116 EXPECT_EQ(expected, | 1138 EXPECT_EQ(expected, |
1117 report->Get("RTCPeerConnection")->cast_to< | 1139 report->Get("RTCPeerConnection")->cast_to< |
1118 RTCPeerConnectionStats>()); | 1140 RTCPeerConnectionStats>()); |
1119 } | 1141 } |
1120 } | 1142 } |
1121 | 1143 |
1122 TEST_F(RTCStatsCollectorTest, | 1144 TEST_F(RTCStatsCollectorTest, |
1123 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Audio) { | 1145 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Audio) { |
1124 rtc::scoped_refptr<StreamCollection> local_streams = | 1146 rtc::scoped_refptr<StreamCollection> local_streams = |
1125 StreamCollection::Create(); | 1147 StreamCollection::Create(); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1162 remote_stream->AddTrack(remote_audio_track); | 1184 remote_stream->AddTrack(remote_audio_track); |
1163 | 1185 |
1164 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1186 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1165 | 1187 |
1166 RTCMediaStreamStats expected_local_stream( | 1188 RTCMediaStreamStats expected_local_stream( |
1167 "RTCMediaStream_LocalStreamLabel", report->timestamp_us()); | 1189 "RTCMediaStream_LocalStreamLabel", report->timestamp_us()); |
1168 expected_local_stream.stream_identifier = local_stream->label(); | 1190 expected_local_stream.stream_identifier = local_stream->label(); |
1169 expected_local_stream.track_ids = std::vector<std::string>(); | 1191 expected_local_stream.track_ids = std::vector<std::string>(); |
1170 expected_local_stream.track_ids->push_back( | 1192 expected_local_stream.track_ids->push_back( |
1171 "RTCMediaStreamTrack_LocalAudioTrackID"); | 1193 "RTCMediaStreamTrack_LocalAudioTrackID"); |
1172 EXPECT_TRUE(report->Get(expected_local_stream.id())); | 1194 ASSERT_TRUE(report->Get(expected_local_stream.id())); |
1173 EXPECT_EQ(expected_local_stream, | 1195 EXPECT_EQ(expected_local_stream, |
1174 report->Get(expected_local_stream.id())->cast_to< | 1196 report->Get(expected_local_stream.id())->cast_to< |
1175 RTCMediaStreamStats>()); | 1197 RTCMediaStreamStats>()); |
1176 | 1198 |
1177 RTCMediaStreamStats expected_remote_stream( | 1199 RTCMediaStreamStats expected_remote_stream( |
1178 "RTCMediaStream_RemoteStreamLabel", report->timestamp_us()); | 1200 "RTCMediaStream_RemoteStreamLabel", report->timestamp_us()); |
1179 expected_remote_stream.stream_identifier = remote_stream->label(); | 1201 expected_remote_stream.stream_identifier = remote_stream->label(); |
1180 expected_remote_stream.track_ids = std::vector<std::string>(); | 1202 expected_remote_stream.track_ids = std::vector<std::string>(); |
1181 expected_remote_stream.track_ids->push_back( | 1203 expected_remote_stream.track_ids->push_back( |
1182 "RTCMediaStreamTrack_RemoteAudioTrackID"); | 1204 "RTCMediaStreamTrack_RemoteAudioTrackID"); |
1183 EXPECT_TRUE(report->Get(expected_remote_stream.id())); | 1205 ASSERT_TRUE(report->Get(expected_remote_stream.id())); |
1184 EXPECT_EQ(expected_remote_stream, | 1206 EXPECT_EQ(expected_remote_stream, |
1185 report->Get(expected_remote_stream.id())->cast_to< | 1207 report->Get(expected_remote_stream.id())->cast_to< |
1186 RTCMediaStreamStats>()); | 1208 RTCMediaStreamStats>()); |
1187 | 1209 |
1188 RTCMediaStreamTrackStats expected_local_audio_track( | 1210 RTCMediaStreamTrackStats expected_local_audio_track( |
1189 "RTCMediaStreamTrack_LocalAudioTrackID", report->timestamp_us()); | 1211 "RTCMediaStreamTrack_LocalAudioTrackID", report->timestamp_us()); |
1190 expected_local_audio_track.track_identifier = local_audio_track->id(); | 1212 expected_local_audio_track.track_identifier = local_audio_track->id(); |
1191 expected_local_audio_track.remote_source = false; | 1213 expected_local_audio_track.remote_source = false; |
1192 expected_local_audio_track.ended = true; | 1214 expected_local_audio_track.ended = true; |
1193 expected_local_audio_track.detached = false; | 1215 expected_local_audio_track.detached = false; |
1194 expected_local_audio_track.audio_level = 1.0; | 1216 expected_local_audio_track.audio_level = 1.0; |
1195 expected_local_audio_track.echo_return_loss = 42.0; | 1217 expected_local_audio_track.echo_return_loss = 42.0; |
1196 expected_local_audio_track.echo_return_loss_enhancement = 52.0; | 1218 expected_local_audio_track.echo_return_loss_enhancement = 52.0; |
1197 EXPECT_TRUE(report->Get(expected_local_audio_track.id())); | 1219 ASSERT_TRUE(report->Get(expected_local_audio_track.id())); |
1198 EXPECT_EQ(expected_local_audio_track, | 1220 EXPECT_EQ(expected_local_audio_track, |
1199 report->Get(expected_local_audio_track.id())->cast_to< | 1221 report->Get(expected_local_audio_track.id())->cast_to< |
1200 RTCMediaStreamTrackStats>()); | 1222 RTCMediaStreamTrackStats>()); |
1201 | 1223 |
1202 RTCMediaStreamTrackStats expected_remote_audio_track( | 1224 RTCMediaStreamTrackStats expected_remote_audio_track( |
1203 "RTCMediaStreamTrack_RemoteAudioTrackID", report->timestamp_us()); | 1225 "RTCMediaStreamTrack_RemoteAudioTrackID", report->timestamp_us()); |
1204 expected_remote_audio_track.track_identifier = remote_audio_track->id(); | 1226 expected_remote_audio_track.track_identifier = remote_audio_track->id(); |
1205 expected_remote_audio_track.remote_source = true; | 1227 expected_remote_audio_track.remote_source = true; |
1206 expected_remote_audio_track.ended = false; | 1228 expected_remote_audio_track.ended = false; |
1207 expected_remote_audio_track.detached = false; | 1229 expected_remote_audio_track.detached = false; |
1208 expected_remote_audio_track.audio_level = 0.0; | 1230 expected_remote_audio_track.audio_level = 0.0; |
1209 expected_remote_audio_track.echo_return_loss = 13.0; | 1231 expected_remote_audio_track.echo_return_loss = 13.0; |
1210 expected_remote_audio_track.echo_return_loss_enhancement = 37.0; | 1232 expected_remote_audio_track.echo_return_loss_enhancement = 37.0; |
1211 EXPECT_TRUE(report->Get(expected_remote_audio_track.id())); | 1233 ASSERT_TRUE(report->Get(expected_remote_audio_track.id())); |
1212 EXPECT_EQ(expected_remote_audio_track, | 1234 EXPECT_EQ(expected_remote_audio_track, |
1213 report->Get(expected_remote_audio_track.id())->cast_to< | 1235 report->Get(expected_remote_audio_track.id())->cast_to< |
1214 RTCMediaStreamTrackStats>()); | 1236 RTCMediaStreamTrackStats>()); |
1215 } | 1237 } |
1216 | 1238 |
1217 TEST_F(RTCStatsCollectorTest, | 1239 TEST_F(RTCStatsCollectorTest, |
1218 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Audio_Defaults) { | 1240 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Audio_Defaults) { |
1219 rtc::scoped_refptr<StreamCollection> local_streams = | 1241 rtc::scoped_refptr<StreamCollection> local_streams = |
1220 StreamCollection::Create(); | 1242 StreamCollection::Create(); |
1221 EXPECT_CALL(test_->pc(), local_streams()) | 1243 EXPECT_CALL(test_->pc(), local_streams()) |
(...skipping 19 matching lines...) Expand all Loading... | |
1241 | 1263 |
1242 RTCMediaStreamTrackStats expected_local_audio_track( | 1264 RTCMediaStreamTrackStats expected_local_audio_track( |
1243 "RTCMediaStreamTrack_LocalAudioTrackID", report->timestamp_us()); | 1265 "RTCMediaStreamTrack_LocalAudioTrackID", report->timestamp_us()); |
1244 expected_local_audio_track.track_identifier = local_audio_track->id(); | 1266 expected_local_audio_track.track_identifier = local_audio_track->id(); |
1245 expected_local_audio_track.remote_source = false; | 1267 expected_local_audio_track.remote_source = false; |
1246 expected_local_audio_track.ended = true; | 1268 expected_local_audio_track.ended = true; |
1247 expected_local_audio_track.detached = false; | 1269 expected_local_audio_track.detached = false; |
1248 expected_local_audio_track.audio_level = 1.0; | 1270 expected_local_audio_track.audio_level = 1.0; |
1249 // Should be undefined: |expected_local_audio_track.echo_return_loss| and | 1271 // Should be undefined: |expected_local_audio_track.echo_return_loss| and |
1250 // |expected_local_audio_track.echo_return_loss_enhancement|. | 1272 // |expected_local_audio_track.echo_return_loss_enhancement|. |
1251 EXPECT_TRUE(report->Get(expected_local_audio_track.id())); | 1273 ASSERT_TRUE(report->Get(expected_local_audio_track.id())); |
1252 EXPECT_EQ(expected_local_audio_track, | 1274 EXPECT_EQ(expected_local_audio_track, |
1253 report->Get(expected_local_audio_track.id())->cast_to< | 1275 report->Get(expected_local_audio_track.id())->cast_to< |
1254 RTCMediaStreamTrackStats>()); | 1276 RTCMediaStreamTrackStats>()); |
1255 } | 1277 } |
1256 | 1278 |
1257 TEST_F(RTCStatsCollectorTest, | 1279 TEST_F(RTCStatsCollectorTest, |
1258 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Video) { | 1280 CollectRTCMediaStreamStatsAndRTCMediaStreamTrackStats_Video) { |
1259 rtc::scoped_refptr<StreamCollection> local_streams = | 1281 rtc::scoped_refptr<StreamCollection> local_streams = |
1260 StreamCollection::Create(); | 1282 StreamCollection::Create(); |
1261 rtc::scoped_refptr<StreamCollection> remote_streams = | 1283 rtc::scoped_refptr<StreamCollection> remote_streams = |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1299 remote_stream->AddTrack(remote_video_track); | 1321 remote_stream->AddTrack(remote_video_track); |
1300 | 1322 |
1301 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1323 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1302 | 1324 |
1303 RTCMediaStreamStats expected_local_stream( | 1325 RTCMediaStreamStats expected_local_stream( |
1304 "RTCMediaStream_LocalStreamLabel", report->timestamp_us()); | 1326 "RTCMediaStream_LocalStreamLabel", report->timestamp_us()); |
1305 expected_local_stream.stream_identifier = local_stream->label(); | 1327 expected_local_stream.stream_identifier = local_stream->label(); |
1306 expected_local_stream.track_ids = std::vector<std::string>(); | 1328 expected_local_stream.track_ids = std::vector<std::string>(); |
1307 expected_local_stream.track_ids->push_back( | 1329 expected_local_stream.track_ids->push_back( |
1308 "RTCMediaStreamTrack_LocalVideoTrackID"); | 1330 "RTCMediaStreamTrack_LocalVideoTrackID"); |
1309 EXPECT_TRUE(report->Get(expected_local_stream.id())); | 1331 ASSERT_TRUE(report->Get(expected_local_stream.id())); |
1310 EXPECT_EQ(expected_local_stream, | 1332 EXPECT_EQ(expected_local_stream, |
1311 report->Get(expected_local_stream.id())->cast_to< | 1333 report->Get(expected_local_stream.id())->cast_to< |
1312 RTCMediaStreamStats>()); | 1334 RTCMediaStreamStats>()); |
1313 | 1335 |
1314 RTCMediaStreamStats expected_remote_stream( | 1336 RTCMediaStreamStats expected_remote_stream( |
1315 "RTCMediaStream_RemoteStreamLabel", report->timestamp_us()); | 1337 "RTCMediaStream_RemoteStreamLabel", report->timestamp_us()); |
1316 expected_remote_stream.stream_identifier = remote_stream->label(); | 1338 expected_remote_stream.stream_identifier = remote_stream->label(); |
1317 expected_remote_stream.track_ids = std::vector<std::string>(); | 1339 expected_remote_stream.track_ids = std::vector<std::string>(); |
1318 expected_remote_stream.track_ids->push_back( | 1340 expected_remote_stream.track_ids->push_back( |
1319 "RTCMediaStreamTrack_RemoteVideoTrackID"); | 1341 "RTCMediaStreamTrack_RemoteVideoTrackID"); |
1320 EXPECT_TRUE(report->Get(expected_remote_stream.id())); | 1342 ASSERT_TRUE(report->Get(expected_remote_stream.id())); |
1321 EXPECT_EQ(expected_remote_stream, | 1343 EXPECT_EQ(expected_remote_stream, |
1322 report->Get(expected_remote_stream.id())->cast_to< | 1344 report->Get(expected_remote_stream.id())->cast_to< |
1323 RTCMediaStreamStats>()); | 1345 RTCMediaStreamStats>()); |
1324 | 1346 |
1325 RTCMediaStreamTrackStats expected_local_video_track( | 1347 RTCMediaStreamTrackStats expected_local_video_track( |
1326 "RTCMediaStreamTrack_LocalVideoTrackID", report->timestamp_us()); | 1348 "RTCMediaStreamTrack_LocalVideoTrackID", report->timestamp_us()); |
1327 expected_local_video_track.track_identifier = local_video_track->id(); | 1349 expected_local_video_track.track_identifier = local_video_track->id(); |
1328 expected_local_video_track.remote_source = false; | 1350 expected_local_video_track.remote_source = false; |
1329 expected_local_video_track.ended = false; | 1351 expected_local_video_track.ended = false; |
1330 expected_local_video_track.detached = false; | 1352 expected_local_video_track.detached = false; |
1331 expected_local_video_track.frame_width = 1234; | 1353 expected_local_video_track.frame_width = 1234; |
1332 expected_local_video_track.frame_height = 4321; | 1354 expected_local_video_track.frame_height = 4321; |
1333 EXPECT_TRUE(report->Get(expected_local_video_track.id())); | 1355 ASSERT_TRUE(report->Get(expected_local_video_track.id())); |
1334 EXPECT_EQ(expected_local_video_track, | 1356 EXPECT_EQ(expected_local_video_track, |
1335 report->Get(expected_local_video_track.id())->cast_to< | 1357 report->Get(expected_local_video_track.id())->cast_to< |
1336 RTCMediaStreamTrackStats>()); | 1358 RTCMediaStreamTrackStats>()); |
1337 | 1359 |
1338 RTCMediaStreamTrackStats expected_remote_video_track( | 1360 RTCMediaStreamTrackStats expected_remote_video_track( |
1339 "RTCMediaStreamTrack_RemoteVideoTrackID", report->timestamp_us()); | 1361 "RTCMediaStreamTrack_RemoteVideoTrackID", report->timestamp_us()); |
1340 expected_remote_video_track.track_identifier = remote_video_track->id(); | 1362 expected_remote_video_track.track_identifier = remote_video_track->id(); |
1341 expected_remote_video_track.remote_source = true; | 1363 expected_remote_video_track.remote_source = true; |
1342 expected_remote_video_track.ended = true; | 1364 expected_remote_video_track.ended = true; |
1343 expected_remote_video_track.detached = false; | 1365 expected_remote_video_track.detached = false; |
1344 expected_remote_video_track.frame_width = 1234; | 1366 expected_remote_video_track.frame_width = 1234; |
1345 expected_remote_video_track.frame_height = 4321; | 1367 expected_remote_video_track.frame_height = 4321; |
1346 EXPECT_TRUE(report->Get(expected_remote_video_track.id())); | 1368 ASSERT_TRUE(report->Get(expected_remote_video_track.id())); |
1347 EXPECT_EQ(expected_remote_video_track, | 1369 EXPECT_EQ(expected_remote_video_track, |
1348 report->Get(expected_remote_video_track.id())->cast_to< | 1370 report->Get(expected_remote_video_track.id())->cast_to< |
1349 RTCMediaStreamTrackStats>()); | 1371 RTCMediaStreamTrackStats>()); |
1350 } | 1372 } |
1351 | 1373 |
1352 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Audio) { | 1374 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Audio) { |
1353 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1375 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1354 cricket::VoiceChannel voice_channel( | 1376 cricket::VoiceChannel voice_channel( |
1355 test_->worker_thread(), test_->network_thread(), test_->media_engine(), | 1377 test_->worker_thread(), test_->network_thread(), test_->media_engine(), |
1356 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, | 1378 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1411 expected_audio.bytes_received = 3; | 1433 expected_audio.bytes_received = 3; |
1412 expected_audio.packets_lost = 42; | 1434 expected_audio.packets_lost = 42; |
1413 expected_audio.jitter = 4.5; | 1435 expected_audio.jitter = 4.5; |
1414 expected_audio.fraction_lost = 5.5; | 1436 expected_audio.fraction_lost = 5.5; |
1415 | 1437 |
1416 ASSERT(report->Get(expected_audio.id())); | 1438 ASSERT(report->Get(expected_audio.id())); |
1417 const RTCInboundRTPStreamStats& audio = report->Get( | 1439 const RTCInboundRTPStreamStats& audio = report->Get( |
1418 expected_audio.id())->cast_to<RTCInboundRTPStreamStats>(); | 1440 expected_audio.id())->cast_to<RTCInboundRTPStreamStats>(); |
1419 EXPECT_EQ(audio, expected_audio); | 1441 EXPECT_EQ(audio, expected_audio); |
1420 | 1442 |
1421 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); | 1443 ASSERT_TRUE(report->Get(*expected_audio.transport_id)); |
1422 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); | 1444 ASSERT_TRUE(report->Get(*expected_audio.codec_id)); |
1423 } | 1445 } |
1424 | 1446 |
1425 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Video) { | 1447 TEST_F(RTCStatsCollectorTest, CollectRTCInboundRTPStreamStats_Video) { |
1426 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1448 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1427 cricket::VideoChannel video_channel( | 1449 cricket::VideoChannel video_channel( |
1428 test_->worker_thread(), test_->network_thread(), video_media_channel, | 1450 test_->worker_thread(), test_->network_thread(), video_media_channel, |
1429 nullptr, "VideoContentName", kDefaultRtcpEnabled, kDefaultSrtpRequired); | 1451 nullptr, "VideoContentName", kDefaultRtcpEnabled, kDefaultSrtpRequired); |
1430 | 1452 |
1431 cricket::VideoMediaInfo video_media_info; | 1453 cricket::VideoMediaInfo video_media_info; |
1432 | 1454 |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1487 expected_video.packets_received = 2; | 1509 expected_video.packets_received = 2; |
1488 expected_video.bytes_received = 3; | 1510 expected_video.bytes_received = 3; |
1489 expected_video.packets_lost = 42; | 1511 expected_video.packets_lost = 42; |
1490 expected_video.fraction_lost = 4.5; | 1512 expected_video.fraction_lost = 4.5; |
1491 | 1513 |
1492 ASSERT(report->Get(expected_video.id())); | 1514 ASSERT(report->Get(expected_video.id())); |
1493 const RTCInboundRTPStreamStats& video = report->Get( | 1515 const RTCInboundRTPStreamStats& video = report->Get( |
1494 expected_video.id())->cast_to<RTCInboundRTPStreamStats>(); | 1516 expected_video.id())->cast_to<RTCInboundRTPStreamStats>(); |
1495 EXPECT_EQ(video, expected_video); | 1517 EXPECT_EQ(video, expected_video); |
1496 | 1518 |
1497 EXPECT_TRUE(report->Get(*expected_video.transport_id)); | 1519 ASSERT_TRUE(report->Get(*expected_video.transport_id)); |
1498 EXPECT_TRUE(report->Get(*video.codec_id)); | 1520 ASSERT_TRUE(report->Get(*video.codec_id)); |
1499 } | 1521 } |
1500 | 1522 |
1501 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Audio) { | 1523 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Audio) { |
1502 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1524 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1503 cricket::VoiceChannel voice_channel( | 1525 cricket::VoiceChannel voice_channel( |
1504 test_->worker_thread(), test_->network_thread(), test_->media_engine(), | 1526 test_->worker_thread(), test_->network_thread(), test_->media_engine(), |
1505 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, | 1527 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, |
1506 kDefaultSrtpRequired); | 1528 kDefaultSrtpRequired); |
1507 | 1529 |
1508 cricket::VoiceMediaInfo voice_media_info; | 1530 cricket::VoiceMediaInfo voice_media_info; |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1555 expected_audio.codec_id = "RTCCodec_OutboundAudio_42"; | 1577 expected_audio.codec_id = "RTCCodec_OutboundAudio_42"; |
1556 expected_audio.packets_sent = 2; | 1578 expected_audio.packets_sent = 2; |
1557 expected_audio.bytes_sent = 3; | 1579 expected_audio.bytes_sent = 3; |
1558 expected_audio.round_trip_time = 4.5; | 1580 expected_audio.round_trip_time = 4.5; |
1559 | 1581 |
1560 ASSERT(report->Get(expected_audio.id())); | 1582 ASSERT(report->Get(expected_audio.id())); |
1561 const RTCOutboundRTPStreamStats& audio = report->Get( | 1583 const RTCOutboundRTPStreamStats& audio = report->Get( |
1562 expected_audio.id())->cast_to<RTCOutboundRTPStreamStats>(); | 1584 expected_audio.id())->cast_to<RTCOutboundRTPStreamStats>(); |
1563 EXPECT_EQ(audio, expected_audio); | 1585 EXPECT_EQ(audio, expected_audio); |
1564 | 1586 |
1565 EXPECT_TRUE(report->Get(*expected_audio.transport_id)); | 1587 ASSERT_TRUE(report->Get(*expected_audio.transport_id)); |
1566 EXPECT_TRUE(report->Get(*expected_audio.codec_id)); | 1588 ASSERT_TRUE(report->Get(*expected_audio.codec_id)); |
1567 } | 1589 } |
1568 | 1590 |
1569 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Video) { | 1591 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Video) { |
1570 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1592 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1571 cricket::VideoChannel video_channel( | 1593 cricket::VideoChannel video_channel( |
1572 test_->worker_thread(), test_->network_thread(), video_media_channel, | 1594 test_->worker_thread(), test_->network_thread(), video_media_channel, |
1573 nullptr, "VideoContentName", kDefaultRtcpEnabled, kDefaultSrtpRequired); | 1595 nullptr, "VideoContentName", kDefaultRtcpEnabled, kDefaultSrtpRequired); |
1574 | 1596 |
1575 cricket::VideoMediaInfo video_media_info; | 1597 cricket::VideoMediaInfo video_media_info; |
1576 | 1598 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1628 expected_video.nack_count = 4; | 1650 expected_video.nack_count = 4; |
1629 expected_video.packets_sent = 5; | 1651 expected_video.packets_sent = 5; |
1630 expected_video.bytes_sent = 6; | 1652 expected_video.bytes_sent = 6; |
1631 expected_video.round_trip_time = 7.5; | 1653 expected_video.round_trip_time = 7.5; |
1632 | 1654 |
1633 ASSERT(report->Get(expected_video.id())); | 1655 ASSERT(report->Get(expected_video.id())); |
1634 const RTCOutboundRTPStreamStats& video = report->Get( | 1656 const RTCOutboundRTPStreamStats& video = report->Get( |
1635 expected_video.id())->cast_to<RTCOutboundRTPStreamStats>(); | 1657 expected_video.id())->cast_to<RTCOutboundRTPStreamStats>(); |
1636 EXPECT_EQ(video, expected_video); | 1658 EXPECT_EQ(video, expected_video); |
1637 | 1659 |
1638 EXPECT_TRUE(report->Get(*expected_video.transport_id)); | 1660 ASSERT_TRUE(report->Get(*expected_video.transport_id)); |
1639 EXPECT_TRUE(report->Get(*expected_video.codec_id)); | 1661 ASSERT_TRUE(report->Get(*expected_video.codec_id)); |
1640 } | 1662 } |
1641 | 1663 |
1642 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Default) { | 1664 TEST_F(RTCStatsCollectorTest, CollectRTCOutboundRTPStreamStats_Default) { |
1643 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); | 1665 MockVoiceMediaChannel* voice_media_channel = new MockVoiceMediaChannel(); |
1644 cricket::VoiceChannel voice_channel( | 1666 cricket::VoiceChannel voice_channel( |
1645 test_->worker_thread(), test_->network_thread(), test_->media_engine(), | 1667 test_->worker_thread(), test_->network_thread(), test_->media_engine(), |
1646 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, | 1668 voice_media_channel, nullptr, "VoiceContentName", kDefaultRtcpEnabled, |
1647 kDefaultSrtpRequired); | 1669 kDefaultSrtpRequired); |
1648 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); | 1670 MockVideoMediaChannel* video_media_channel = new MockVideoMediaChannel(); |
1649 cricket::VideoChannel video_channel( | 1671 cricket::VideoChannel video_channel( |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1776 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); | 1798 rtc::scoped_refptr<const RTCStatsReport> report = GetStatsReport(); |
1777 | 1799 |
1778 RTCTransportStats expected_rtp_transport( | 1800 RTCTransportStats expected_rtp_transport( |
1779 "RTCTransport_transport_" + | 1801 "RTCTransport_transport_" + |
1780 rtc::ToString<>(cricket::ICE_CANDIDATE_COMPONENT_RTP), | 1802 rtc::ToString<>(cricket::ICE_CANDIDATE_COMPONENT_RTP), |
1781 report->timestamp_us()); | 1803 report->timestamp_us()); |
1782 expected_rtp_transport.bytes_sent = 42; | 1804 expected_rtp_transport.bytes_sent = 42; |
1783 expected_rtp_transport.bytes_received = 1337; | 1805 expected_rtp_transport.bytes_received = 1337; |
1784 expected_rtp_transport.active_connection = false; | 1806 expected_rtp_transport.active_connection = false; |
1785 | 1807 |
1786 EXPECT_TRUE(report->Get(expected_rtp_transport.id())); | 1808 ASSERT_TRUE(report->Get(expected_rtp_transport.id())); |
1787 EXPECT_EQ( | 1809 EXPECT_EQ( |
1788 expected_rtp_transport, | 1810 expected_rtp_transport, |
1789 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); | 1811 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); |
1790 | 1812 |
1791 cricket::ConnectionInfo rtcp_connection_info; | 1813 cricket::ConnectionInfo rtcp_connection_info; |
1792 rtcp_connection_info.best_connection = false; | 1814 rtcp_connection_info.best_connection = false; |
1793 rtcp_connection_info.local_candidate = *rtcp_local_candidate.get(); | 1815 rtcp_connection_info.local_candidate = *rtcp_local_candidate.get(); |
1794 rtcp_connection_info.remote_candidate = *rtcp_remote_candidate.get(); | 1816 rtcp_connection_info.remote_candidate = *rtcp_remote_candidate.get(); |
1795 rtcp_connection_info.sent_total_bytes = 1337; | 1817 rtcp_connection_info.sent_total_bytes = 1337; |
1796 rtcp_connection_info.recv_total_bytes = 42; | 1818 rtcp_connection_info.recv_total_bytes = 42; |
(...skipping 11 matching lines...) Expand all Loading... | |
1808 RTCTransportStats expected_rtcp_transport( | 1830 RTCTransportStats expected_rtcp_transport( |
1809 "RTCTransport_transport_" + | 1831 "RTCTransport_transport_" + |
1810 rtc::ToString<>(cricket::ICE_CANDIDATE_COMPONENT_RTCP), | 1832 rtc::ToString<>(cricket::ICE_CANDIDATE_COMPONENT_RTCP), |
1811 report->timestamp_us()); | 1833 report->timestamp_us()); |
1812 expected_rtcp_transport.bytes_sent = 1337; | 1834 expected_rtcp_transport.bytes_sent = 1337; |
1813 expected_rtcp_transport.bytes_received = 42; | 1835 expected_rtcp_transport.bytes_received = 42; |
1814 expected_rtcp_transport.active_connection = false; | 1836 expected_rtcp_transport.active_connection = false; |
1815 | 1837 |
1816 expected_rtp_transport.rtcp_transport_stats_id = expected_rtcp_transport.id(); | 1838 expected_rtp_transport.rtcp_transport_stats_id = expected_rtcp_transport.id(); |
1817 | 1839 |
1818 EXPECT_TRUE(report->Get(expected_rtp_transport.id())); | 1840 ASSERT_TRUE(report->Get(expected_rtp_transport.id())); |
1819 EXPECT_EQ( | 1841 EXPECT_EQ( |
1820 expected_rtp_transport, | 1842 expected_rtp_transport, |
1821 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); | 1843 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); |
1822 EXPECT_TRUE(report->Get(expected_rtcp_transport.id())); | 1844 ASSERT_TRUE(report->Get(expected_rtcp_transport.id())); |
1823 EXPECT_EQ( | 1845 EXPECT_EQ( |
1824 expected_rtcp_transport, | 1846 expected_rtcp_transport, |
1825 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); | 1847 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); |
1826 | 1848 |
1827 // Get stats with an active connection. | 1849 // Get stats with an active connection. |
1828 session_stats.transport_stats["transport"] | 1850 session_stats.transport_stats["transport"] |
1829 .channel_stats[1] | 1851 .channel_stats[1] |
1830 .connection_infos[0] | 1852 .connection_infos[0] |
1831 .best_connection = true; | 1853 .best_connection = true; |
1832 | 1854 |
1833 collector_->ClearCachedStatsReport(); | 1855 collector_->ClearCachedStatsReport(); |
1834 report = GetStatsReport(); | 1856 report = GetStatsReport(); |
1835 | 1857 |
1836 expected_rtcp_transport.active_connection = true; | 1858 expected_rtcp_transport.active_connection = true; |
1837 expected_rtcp_transport.selected_candidate_pair_id = | 1859 expected_rtcp_transport.selected_candidate_pair_id = |
1838 "RTCIceCandidatePair_" + rtcp_local_candidate->id() + "_" + | 1860 "RTCIceCandidatePair_" + rtcp_local_candidate->id() + "_" + |
1839 rtcp_remote_candidate->id(); | 1861 rtcp_remote_candidate->id(); |
1840 | 1862 |
1841 EXPECT_TRUE(report->Get(expected_rtp_transport.id())); | 1863 ASSERT_TRUE(report->Get(expected_rtp_transport.id())); |
1842 EXPECT_EQ( | 1864 EXPECT_EQ( |
1843 expected_rtp_transport, | 1865 expected_rtp_transport, |
1844 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); | 1866 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); |
1845 EXPECT_TRUE(report->Get(expected_rtcp_transport.id())); | 1867 ASSERT_TRUE(report->Get(expected_rtcp_transport.id())); |
1846 EXPECT_EQ( | 1868 EXPECT_EQ( |
1847 expected_rtcp_transport, | 1869 expected_rtcp_transport, |
1848 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); | 1870 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); |
1849 | 1871 |
1850 // Get stats with certificates. | 1872 // Get stats with certificates. |
1851 std::unique_ptr<CertificateInfo> local_certinfo = | 1873 std::unique_ptr<CertificateInfo> local_certinfo = |
1852 CreateFakeCertificateAndInfoFromDers( | 1874 CreateFakeCertificateAndInfoFromDers( |
1853 std::vector<std::string>({ "(local) local", "(local) chain" })); | 1875 std::vector<std::string>({ "(local) local", "(local) chain" })); |
1854 std::unique_ptr<CertificateInfo> remote_certinfo = | 1876 std::unique_ptr<CertificateInfo> remote_certinfo = |
1855 CreateFakeCertificateAndInfoFromDers( | 1877 CreateFakeCertificateAndInfoFromDers( |
(...skipping 21 matching lines...) Expand all Loading... | |
1877 expected_rtp_transport.local_certificate_id = | 1899 expected_rtp_transport.local_certificate_id = |
1878 "RTCCertificate_" + local_certinfo->fingerprints[0]; | 1900 "RTCCertificate_" + local_certinfo->fingerprints[0]; |
1879 expected_rtp_transport.remote_certificate_id = | 1901 expected_rtp_transport.remote_certificate_id = |
1880 "RTCCertificate_" + remote_certinfo->fingerprints[0]; | 1902 "RTCCertificate_" + remote_certinfo->fingerprints[0]; |
1881 | 1903 |
1882 expected_rtcp_transport.local_certificate_id = | 1904 expected_rtcp_transport.local_certificate_id = |
1883 *expected_rtp_transport.local_certificate_id; | 1905 *expected_rtp_transport.local_certificate_id; |
1884 expected_rtcp_transport.remote_certificate_id = | 1906 expected_rtcp_transport.remote_certificate_id = |
1885 *expected_rtp_transport.remote_certificate_id; | 1907 *expected_rtp_transport.remote_certificate_id; |
1886 | 1908 |
1887 EXPECT_TRUE(report->Get(expected_rtp_transport.id())); | 1909 ASSERT_TRUE(report->Get(expected_rtp_transport.id())); |
1888 EXPECT_EQ( | 1910 EXPECT_EQ( |
1889 expected_rtp_transport, | 1911 expected_rtp_transport, |
1890 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); | 1912 report->Get(expected_rtp_transport.id())->cast_to<RTCTransportStats>()); |
1891 EXPECT_TRUE(report->Get(expected_rtcp_transport.id())); | 1913 ASSERT_TRUE(report->Get(expected_rtcp_transport.id())); |
1892 EXPECT_EQ( | 1914 EXPECT_EQ( |
1893 expected_rtcp_transport, | 1915 expected_rtcp_transport, |
1894 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); | 1916 report->Get(expected_rtcp_transport.id())->cast_to<RTCTransportStats>()); |
1895 } | 1917 } |
1896 | 1918 |
1897 class RTCStatsCollectorTestWithFakeCollector : public testing::Test { | 1919 class RTCStatsCollectorTestWithFakeCollector : public testing::Test { |
1898 public: | 1920 public: |
1899 RTCStatsCollectorTestWithFakeCollector() | 1921 RTCStatsCollectorTestWithFakeCollector() |
1900 : test_(new rtc::RefCountedObject<RTCStatsCollectorTestHelper>()), | 1922 : test_(new rtc::RefCountedObject<RTCStatsCollectorTestHelper>()), |
1901 collector_(FakeRTCStatsCollector::Create( | 1923 collector_(FakeRTCStatsCollector::Create( |
1902 &test_->pc(), 50 * rtc::kNumMicrosecsPerMillisec)) { | 1924 &test_->pc(), 50 * rtc::kNumMicrosecsPerMillisec)) { |
1903 } | 1925 } |
1904 | 1926 |
1905 protected: | 1927 protected: |
1906 rtc::scoped_refptr<RTCStatsCollectorTestHelper> test_; | 1928 rtc::scoped_refptr<RTCStatsCollectorTestHelper> test_; |
1907 rtc::scoped_refptr<FakeRTCStatsCollector> collector_; | 1929 rtc::scoped_refptr<FakeRTCStatsCollector> collector_; |
1908 }; | 1930 }; |
1909 | 1931 |
1910 TEST_F(RTCStatsCollectorTestWithFakeCollector, ThreadUsageAndResultsMerging) { | 1932 TEST_F(RTCStatsCollectorTestWithFakeCollector, ThreadUsageAndResultsMerging) { |
1911 collector_->VerifyThreadUsageAndResultsMerging(); | 1933 collector_->VerifyThreadUsageAndResultsMerging(); |
1912 } | 1934 } |
1913 | 1935 |
1914 } // namespace | 1936 } // namespace |
1915 | 1937 |
1916 } // namespace webrtc | 1938 } // namespace webrtc |
OLD | NEW |