diff --git a/webrtc/api/rtcstats_integrationtest.cc b/webrtc/api/rtcstats_integrationtest.cc index 556907ce51..53c73f3858 100644 --- a/webrtc/api/rtcstats_integrationtest.cc +++ b/webrtc/api/rtcstats_integrationtest.cc @@ -397,6 +397,7 @@ class RTCStatsReportVerifier { verifier.TestMemberIsDefined(candidate.candidate_type); verifier.TestMemberIsNonNegative(candidate.priority); verifier.TestMemberIsUndefined(candidate.url); + verifier.TestMemberIsDefined(candidate.deleted); return verifier.ExpectAllMembersSuccessfullyTested(); } diff --git a/webrtc/api/rtcstatscollector_unittest.cc b/webrtc/api/rtcstatscollector_unittest.cc index 6e8485312f..deda617468 100644 --- a/webrtc/api/rtcstatscollector_unittest.cc +++ b/webrtc/api/rtcstatscollector_unittest.cc @@ -923,6 +923,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { expected_a_remote_srflx.protocol = "remote_srflx's protocol"; expected_a_remote_srflx.candidate_type = "srflx"; expected_a_remote_srflx.priority = 1; + expected_a_remote_srflx.deleted = false; EXPECT_TRUE(*expected_a_remote_srflx.is_remote); std::unique_ptr a_local_prflx = CreateFakeCandidate( @@ -937,6 +938,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { expected_a_local_prflx.protocol = "a_local_prflx's protocol"; expected_a_local_prflx.candidate_type = "prflx"; expected_a_local_prflx.priority = 2; + expected_a_local_prflx.deleted = false; EXPECT_FALSE(*expected_a_local_prflx.is_remote); std::unique_ptr a_remote_relay = CreateFakeCandidate( @@ -951,6 +953,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { expected_a_remote_relay.protocol = "a_remote_relay's protocol"; expected_a_remote_relay.candidate_type = "relay"; expected_a_remote_relay.priority = 3; + expected_a_remote_relay.deleted = false; EXPECT_TRUE(*expected_a_remote_relay.is_remote); // Candidates in the second transport stats. @@ -966,6 +969,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { expected_b_local.protocol = "b_local's protocol"; expected_b_local.candidate_type = "host"; expected_b_local.priority = 42; + expected_b_local.deleted = false; EXPECT_FALSE(*expected_b_local.is_remote); std::unique_ptr b_remote = CreateFakeCandidate( @@ -980,6 +984,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidateStats) { expected_b_remote.protocol = "b_remote's protocol"; expected_b_remote.candidate_type = "host"; expected_b_remote.priority = 42; + expected_b_remote.deleted = false; EXPECT_TRUE(*expected_b_remote.is_remote); SessionStats session_stats; @@ -1118,6 +1123,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidatePairStats) { expected_local_candidate.protocol = "protocol"; expected_local_candidate.candidate_type = "host"; expected_local_candidate.priority = 42; + expected_local_candidate.deleted = false; EXPECT_FALSE(*expected_local_candidate.is_remote); ASSERT_TRUE(report->Get(expected_local_candidate.id())); EXPECT_EQ(expected_local_candidate, @@ -1131,6 +1137,7 @@ TEST_F(RTCStatsCollectorTest, CollectRTCIceCandidatePairStats) { expected_remote_candidate.protocol = "protocol"; expected_remote_candidate.candidate_type = "host"; expected_remote_candidate.priority = 42; + expected_remote_candidate.deleted = false; EXPECT_TRUE(*expected_remote_candidate.is_remote); ASSERT_TRUE(report->Get(expected_remote_candidate.id())); EXPECT_EQ(expected_remote_candidate, diff --git a/webrtc/api/stats/rtcstats_objects.h b/webrtc/api/stats/rtcstats_objects.h index e85119a2f2..ab691059b5 100644 --- a/webrtc/api/stats/rtcstats_objects.h +++ b/webrtc/api/stats/rtcstats_objects.h @@ -176,6 +176,9 @@ class RTCIceCandidateStats : public RTCStats { RTCStatsMember priority; // TODO(hbos): Not collected by |RTCStatsCollector|. crbug.com/632723 RTCStatsMember url; + // TODO(hbos): |deleted = true| case is not supported by |RTCStatsCollector|. + // crbug.com/632723 + RTCStatsMember deleted; // = false protected: RTCIceCandidateStats( diff --git a/webrtc/stats/rtcstats_objects.cc b/webrtc/stats/rtcstats_objects.cc index 487df930d6..966c845142 100644 --- a/webrtc/stats/rtcstats_objects.cc +++ b/webrtc/stats/rtcstats_objects.cc @@ -242,7 +242,8 @@ WEBRTC_RTCSTATS_IMPL(RTCIceCandidateStats, RTCStats, "ice-candidate", &protocol, &candidate_type, &priority, - &url); + &url, + &deleted); RTCIceCandidateStats::RTCIceCandidateStats( const std::string& id, int64_t timestamp_us, bool is_remote) @@ -258,7 +259,8 @@ RTCIceCandidateStats::RTCIceCandidateStats( protocol("protocol"), candidate_type("candidateType"), priority("priority"), - url("url") { + url("url"), + deleted("deleted", false) { } RTCIceCandidateStats::RTCIceCandidateStats(const RTCIceCandidateStats& other) @@ -269,7 +271,8 @@ RTCIceCandidateStats::RTCIceCandidateStats(const RTCIceCandidateStats& other) protocol(other.protocol), candidate_type(other.candidate_type), priority(other.priority), - url(other.url) { + url(other.url), + deleted(other.deleted) { } RTCIceCandidateStats::~RTCIceCandidateStats() {