Pivot generation of stats to iterate senders/receivers
This will allow stats to be generated when AddTrack() is used.
It also exposes a ClearStatsCache() call on the PC to allow enforcement
of cache lifetime restrictions.
Bug: webrtc:8616
Change-Id: If47b967ce9e40fa768303e6f5f54fe74db2cc7a4
Reviewed-on: https://webrtc-review.googlesource.com/34360
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21468}
diff --git a/pc/trackmediainfomap_unittest.cc b/pc/trackmediainfomap_unittest.cc
index 65e75c4..c05abe1 100644
--- a/pc/trackmediainfomap_unittest.cc
+++ b/pc/trackmediainfomap_unittest.cc
@@ -386,6 +386,20 @@
remote_video_track_.get());
}
+TEST_F(TrackMediaInfoMapTest, SsrcLookupFunction) {
+ AddRtpSenderWithSsrcs({1}, local_audio_track_);
+ AddRtpReceiverWithSsrcs({2}, remote_audio_track_);
+ AddRtpSenderWithSsrcs({3}, local_video_track_);
+ AddRtpReceiverWithSsrcs({4}, remote_video_track_);
+ CreateMap();
+ EXPECT_TRUE(map_->GetVoiceSenderInfoBySsrc(1));
+ EXPECT_TRUE(map_->GetVoiceReceiverInfoBySsrc(2));
+ EXPECT_TRUE(map_->GetVideoSenderInfoBySsrc(3));
+ EXPECT_TRUE(map_->GetVideoReceiverInfoBySsrc(4));
+ EXPECT_FALSE(map_->GetVoiceSenderInfoBySsrc(2));
+ EXPECT_FALSE(map_->GetVoiceSenderInfoBySsrc(1024));
+}
+
// Death tests.
// Disabled on Android because death tests misbehave on Android, see
// base/test/gtest_util.h.