Index: media/cast/logging/encoding_event_subscriber_unittest.cc |
diff --git a/media/cast/logging/encoding_event_subscriber_unittest.cc b/media/cast/logging/encoding_event_subscriber_unittest.cc |
index d00489ad42c20006ee758c26cd0ec94f8bae09d4..b6517b4aa3b25ef92775fdbaa89d9445a08e7da3 100644 |
--- a/media/cast/logging/encoding_event_subscriber_unittest.cc |
+++ b/media/cast/logging/encoding_event_subscriber_unittest.cc |
@@ -568,5 +568,53 @@ TEST_F(EncodingEventSubscriberTest, RelativeRtpTimestampWrapAround) { |
ASSERT_NE(frame_events_.end(), it); |
} |
+TEST_F(EncodingEventSubscriberTest, MaxEventsPerProto) { |
+ Init(VIDEO_EVENT); |
+ RtpTimestamp rtp_timestamp = 100; |
+ for (int i = 0; i < kMaxEventsPerProto + 1; i++) { |
+ cast_environment_->Logging()->InsertFrameEvent(testing_clock_->NowTicks(), |
+ kVideoAckReceived, |
+ rtp_timestamp, |
+ /*frame_id*/ 0); |
+ testing_clock_->Advance(base::TimeDelta::FromMilliseconds(30)); |
+ } |
+ |
+ GetEventsAndReset(); |
+ |
+ FrameEventMap::iterator frame_it = frame_events_.find(0); |
+ ASSERT_TRUE(frame_it != frame_events_.end()); |
+ |
+ linked_ptr<AggregatedFrameEvent> frame_event = frame_it->second; |
+ |
+ EXPECT_EQ(kMaxEventsPerProto, frame_event->event_type_size()); |
+ |
+ for (int i = 0; i < kMaxPacketsPerFrame + 1; i++) { |
+ for (int j = 0; j < kMaxEventsPerProto + 1; j++) { |
+ cast_environment_->Logging()->InsertPacketEvent( |
+ testing_clock_->NowTicks(), |
+ kVideoPacketRetransmitted, |
+ rtp_timestamp, |
+ /*frame_id*/ 0, |
+ i, |
+ kMaxPacketsPerFrame, |
+ 123); |
+ testing_clock_->Advance(base::TimeDelta::FromMilliseconds(30)); |
+ } |
+ } |
+ |
+ GetEventsAndReset(); |
+ |
+ PacketEventMap::iterator packet_it = packet_events_.find(0); |
+ ASSERT_TRUE(packet_it != packet_events_.end()); |
+ |
+ linked_ptr<AggregatedPacketEvent> packet_event = packet_it->second; |
+ |
+ EXPECT_EQ(kMaxPacketsPerFrame, packet_event->base_packet_event_size()); |
+ for (int i = 0; i < packet_event->base_packet_event_size(); i++) { |
+ EXPECT_EQ(kMaxEventsPerProto, |
+ packet_event->base_packet_event(i).event_type_size()); |
+ } |
+} |
+ |
} // namespace cast |
} // namespace media |