| 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 4e30bbc2f9f9f410d9f9df3ad47bc4ab320e1804..eafe3f16e2311a00b4f5f2758d05f61edfea4917 100644
|
| --- a/media/cast/logging/encoding_event_subscriber_unittest.cc
|
| +++ b/media/cast/logging/encoding_event_subscriber_unittest.cc
|
| @@ -64,8 +64,8 @@ class EncodingEventSubscriberTest : public ::testing::Test {
|
| scoped_refptr<test::FakeSingleThreadTaskRunner> task_runner_;
|
| scoped_refptr<CastEnvironment> cast_environment_;
|
| scoped_ptr<EncodingEventSubscriber> event_subscriber_;
|
| - FrameEventMap frame_events_;
|
| - PacketEventMap packet_events_;
|
| + FrameEventList frame_events_;
|
| + PacketEventList packet_events_;
|
| LogMetadata metadata_;
|
| RtpTimestamp first_rtp_timestamp_;
|
| };
|
| @@ -90,8 +90,8 @@ TEST_F(EncodingEventSubscriberTest, FrameEventTruncating) {
|
| GetEventsAndReset();
|
|
|
| ASSERT_EQ(10u, frame_events_.size());
|
| - EXPECT_EQ(100u, frame_events_.begin()->first);
|
| - EXPECT_EQ(1000u, frame_events_.rbegin()->first);
|
| + EXPECT_EQ(100u, frame_events_.front()->relative_rtp_timestamp());
|
| + EXPECT_EQ(1000u, frame_events_.back()->relative_rtp_timestamp());
|
| }
|
|
|
| TEST_F(EncodingEventSubscriberTest, PacketEventTruncating) {
|
| @@ -113,8 +113,8 @@ TEST_F(EncodingEventSubscriberTest, PacketEventTruncating) {
|
| GetEventsAndReset();
|
|
|
| ASSERT_EQ(10u, packet_events_.size());
|
| - EXPECT_EQ(100u, packet_events_.begin()->first);
|
| - EXPECT_EQ(1000u, packet_events_.rbegin()->first);
|
| + EXPECT_EQ(100u, packet_events_.front()->relative_rtp_timestamp());
|
| + EXPECT_EQ(1000u, packet_events_.back()->relative_rtp_timestamp());
|
| }
|
|
|
| TEST_F(EncodingEventSubscriberTest, EventFiltering) {
|
| @@ -135,10 +135,10 @@ TEST_F(EncodingEventSubscriberTest, EventFiltering) {
|
|
|
| GetEventsAndReset();
|
|
|
| - FrameEventMap::iterator frame_it = frame_events_.find(0);
|
| - ASSERT_TRUE(frame_it != frame_events_.end());
|
| + ASSERT_EQ(1u, frame_events_.size());
|
| + FrameEventList::iterator it = frame_events_.begin();
|
|
|
| - linked_ptr<AggregatedFrameEvent> frame_event = frame_it->second;
|
| + linked_ptr<AggregatedFrameEvent> frame_event = *it;
|
|
|
| ASSERT_EQ(1, frame_event->event_type_size());
|
| EXPECT_EQ(media::cast::proto::VIDEO_FRAME_DECODED,
|
| @@ -162,10 +162,9 @@ TEST_F(EncodingEventSubscriberTest, FrameEvent) {
|
| ASSERT_EQ(1u, frame_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - FrameEventMap::iterator it = frame_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != frame_events_.end());
|
| + FrameEventList::iterator it = frame_events_.begin();
|
|
|
| - linked_ptr<AggregatedFrameEvent> event = it->second;
|
| + linked_ptr<AggregatedFrameEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -195,10 +194,9 @@ TEST_F(EncodingEventSubscriberTest, FrameEventDelay) {
|
| ASSERT_EQ(1u, frame_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - FrameEventMap::iterator it = frame_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != frame_events_.end());
|
| + FrameEventList::iterator it = frame_events_.begin();
|
|
|
| - linked_ptr<AggregatedFrameEvent> event = it->second;
|
| + linked_ptr<AggregatedFrameEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -228,10 +226,9 @@ TEST_F(EncodingEventSubscriberTest, FrameEventSize) {
|
| ASSERT_EQ(1u, frame_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - FrameEventMap::iterator it = frame_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != frame_events_.end());
|
| + FrameEventList::iterator it = frame_events_.begin();
|
|
|
| - linked_ptr<AggregatedFrameEvent> event = it->second;
|
| + linked_ptr<AggregatedFrameEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -273,10 +270,9 @@ TEST_F(EncodingEventSubscriberTest, MultipleFrameEvents) {
|
| ASSERT_EQ(2u, frame_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp1 - first_rtp_timestamp_;
|
| - FrameEventMap::iterator it = frame_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != frame_events_.end());
|
| + FrameEventList::iterator it = frame_events_.begin();
|
|
|
| - linked_ptr<AggregatedFrameEvent> event = it->second;
|
| + linked_ptr<AggregatedFrameEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -291,10 +287,9 @@ TEST_F(EncodingEventSubscriberTest, MultipleFrameEvents) {
|
| EXPECT_FALSE(event->has_key_frame());
|
|
|
| relative_rtp_timestamp = rtp_timestamp2 - first_rtp_timestamp_;
|
| - it = frame_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != frame_events_.end());
|
| + ++it;
|
|
|
| - event = it->second;
|
| + event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -322,10 +317,9 @@ TEST_F(EncodingEventSubscriberTest, PacketEvent) {
|
| ASSERT_EQ(1u, packet_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - PacketEventMap::iterator it = packet_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != packet_events_.end());
|
| + PacketEventList::iterator it = packet_events_.begin();
|
|
|
| - linked_ptr<AggregatedPacketEvent> event = it->second;
|
| + linked_ptr<AggregatedPacketEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -371,10 +365,9 @@ TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForPacket) {
|
| ASSERT_EQ(1u, packet_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - PacketEventMap::iterator it = packet_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != packet_events_.end());
|
| + PacketEventList::iterator it = packet_events_.begin();
|
|
|
| - linked_ptr<AggregatedPacketEvent> event = it->second;
|
| + linked_ptr<AggregatedPacketEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -421,10 +414,9 @@ TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForFrame) {
|
| ASSERT_EQ(1u, packet_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_;
|
| - PacketEventMap::iterator it = packet_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != packet_events_.end());
|
| + PacketEventList::iterator it = packet_events_.begin();
|
|
|
| - linked_ptr<AggregatedPacketEvent> event = it->second;
|
| + linked_ptr<AggregatedPacketEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -477,10 +469,9 @@ TEST_F(EncodingEventSubscriberTest, MultiplePacketEvents) {
|
| ASSERT_EQ(2u, packet_events_.size());
|
|
|
| RtpTimestamp relative_rtp_timestamp = rtp_timestamp_1 - first_rtp_timestamp_;
|
| - PacketEventMap::iterator it = packet_events_.find(relative_rtp_timestamp);
|
| - ASSERT_TRUE(it != packet_events_.end());
|
| + PacketEventList::iterator it = packet_events_.begin();
|
|
|
| - linked_ptr<AggregatedPacketEvent> event = it->second;
|
| + linked_ptr<AggregatedPacketEvent> event = *it;
|
|
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| @@ -494,11 +485,10 @@ TEST_F(EncodingEventSubscriberTest, MultiplePacketEvents) {
|
| EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0));
|
|
|
| relative_rtp_timestamp = rtp_timestamp_2 - first_rtp_timestamp_;
|
| - it = packet_events_.find(relative_rtp_timestamp);
|
| + ++it;
|
| ASSERT_TRUE(it != packet_events_.end());
|
|
|
| - event = it->second;
|
| -
|
| + event = *it;
|
| EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp());
|
|
|
| ASSERT_EQ(1, event->base_packet_event_size());
|
| @@ -529,11 +519,13 @@ TEST_F(EncodingEventSubscriberTest, FirstRtpTimestamp) {
|
| GetEventsAndReset();
|
|
|
| EXPECT_EQ(rtp_timestamp, first_rtp_timestamp_);
|
| - FrameEventMap::iterator it = frame_events_.find(0);
|
| + FrameEventList::iterator it = frame_events_.begin();
|
| ASSERT_NE(frame_events_.end(), it);
|
| + EXPECT_EQ(0u, (*it)->relative_rtp_timestamp());
|
|
|
| - it = frame_events_.find(30);
|
| + ++it;
|
| ASSERT_NE(frame_events_.end(), it);
|
| + EXPECT_EQ(30u, (*it)->relative_rtp_timestamp());
|
|
|
| rtp_timestamp = 67890;
|
|
|
| @@ -564,11 +556,90 @@ TEST_F(EncodingEventSubscriberTest, RelativeRtpTimestampWrapAround) {
|
|
|
| GetEventsAndReset();
|
|
|
| - FrameEventMap::iterator it = frame_events_.find(0);
|
| + FrameEventList::iterator it = frame_events_.begin();
|
| ASSERT_NE(frame_events_.end(), it);
|
| + EXPECT_EQ(0u, (*it)->relative_rtp_timestamp());
|
|
|
| - it = frame_events_.find(30);
|
| + ++it;
|
| ASSERT_NE(frame_events_.end(), it);
|
| + EXPECT_EQ(30u, (*it)->relative_rtp_timestamp());
|
| +}
|
| +
|
| +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();
|
| +
|
| + ASSERT_EQ(2u, frame_events_.size());
|
| + FrameEventList::iterator frame_it = frame_events_.begin();
|
| + ASSERT_TRUE(frame_it != frame_events_.end());
|
| +
|
| + linked_ptr<AggregatedFrameEvent> frame_event = *frame_it;
|
| +
|
| + EXPECT_EQ(kMaxEventsPerProto, frame_event->event_type_size());
|
| +
|
| + for (int i = 0; i < kMaxPacketsPerFrame + 1; i++) {
|
| + cast_environment_->Logging()->InsertPacketEvent(
|
| + testing_clock_->NowTicks(),
|
| + kVideoPacketRetransmitted,
|
| + rtp_timestamp,
|
| + /*frame_id*/ 0,
|
| + i,
|
| + kMaxPacketsPerFrame,
|
| + 123);
|
| + testing_clock_->Advance(base::TimeDelta::FromMilliseconds(30));
|
| + }
|
| +
|
| + GetEventsAndReset();
|
| +
|
| + EXPECT_EQ(2u, packet_events_.size());
|
| +
|
| + PacketEventList::iterator packet_it = packet_events_.begin();
|
| + ASSERT_TRUE(packet_it != packet_events_.end());
|
| +
|
| + linked_ptr<AggregatedPacketEvent> packet_event = *packet_it;
|
| +
|
| + EXPECT_EQ(kMaxPacketsPerFrame,
|
| + packet_event->base_packet_event_size());
|
| +
|
| + ++packet_it;
|
| + packet_event = *packet_it;
|
| + EXPECT_EQ(1, packet_event->base_packet_event_size());
|
| +
|
| + for (int j = 0; j < kMaxEventsPerProto + 1; j++) {
|
| + cast_environment_->Logging()->InsertPacketEvent(
|
| + testing_clock_->NowTicks(),
|
| + kVideoPacketRetransmitted,
|
| + rtp_timestamp,
|
| + /*frame_id*/ 0,
|
| + 0,
|
| + 0,
|
| + 123);
|
| + testing_clock_->Advance(base::TimeDelta::FromMilliseconds(30));
|
| + }
|
| +
|
| + GetEventsAndReset();
|
| +
|
| + EXPECT_EQ(2u, packet_events_.size());
|
| + packet_it = packet_events_.begin();
|
| + ASSERT_TRUE(packet_it != packet_events_.end());
|
| +
|
| + packet_event = *packet_it;
|
| +
|
| + EXPECT_EQ(kMaxEventsPerProto,
|
| + packet_event->base_packet_event(0).event_type_size());
|
| +
|
| + ++packet_it;
|
| + packet_event = *packet_it;
|
| + EXPECT_EQ(1, packet_event->base_packet_event(0).event_type_size());
|
| }
|
|
|
| } // namespace cast
|
|
|