Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(749)

Side by Side Diff: media/cast/rtcp/sender_rtcp_event_subscriber_unittest.cc

Issue 270493003: Cast: Deduplicate event types in cast library. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « media/cast/rtcp/sender_rtcp_event_subscriber.cc ('k') | media/cast/test/end2end_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/memory/ref_counted.h" 5 #include "base/memory/ref_counted.h"
6 #include "base/memory/scoped_ptr.h" 6 #include "base/memory/scoped_ptr.h"
7 #include "base/test/simple_test_tick_clock.h" 7 #include "base/test/simple_test_tick_clock.h"
8 #include "base/time/tick_clock.h" 8 #include "base/time/tick_clock.h"
9 #include "media/cast/cast_environment.h" 9 #include "media/cast/cast_environment.h"
10 #include "media/cast/logging/logging_defines.h" 10 #include "media/cast/logging/logging_defines.h"
(...skipping 29 matching lines...) Expand all
40 } 40 }
41 41
42 base::SimpleTestTickClock* testing_clock_; // Owned by CastEnvironment. 42 base::SimpleTestTickClock* testing_clock_; // Owned by CastEnvironment.
43 scoped_refptr<test::FakeSingleThreadTaskRunner> task_runner_; 43 scoped_refptr<test::FakeSingleThreadTaskRunner> task_runner_;
44 scoped_refptr<CastEnvironment> cast_environment_; 44 scoped_refptr<CastEnvironment> cast_environment_;
45 SenderRtcpEventSubscriber event_subscriber_; 45 SenderRtcpEventSubscriber event_subscriber_;
46 }; 46 };
47 47
48 TEST_F(SenderRtcpEventSubscriberTest, InsertEntry) { 48 TEST_F(SenderRtcpEventSubscriberTest, InsertEntry) {
49 cast_environment_->Logging()->InsertFrameEvent( 49 cast_environment_->Logging()->InsertFrameEvent(
50 testing_clock_->NowTicks(), kVideoFrameCaptureBegin, 100u, 1u); 50 testing_clock_->NowTicks(), FRAME_CAPTURE_BEGIN, VIDEO_EVENT, 100u, 1u);
51 cast_environment_->Logging()->InsertFrameEvent( 51 cast_environment_->Logging()->InsertFrameEvent(
52 testing_clock_->NowTicks(), kVideoFrameCaptureBegin, 200u, 2u); 52 testing_clock_->NowTicks(), FRAME_CAPTURE_BEGIN, VIDEO_EVENT, 200u, 2u);
53 cast_environment_->Logging()->InsertFrameEvent(
54 testing_clock_->NowTicks(), kVideoFrameSentToEncoder, 100u, 1u);
55 cast_environment_->Logging()->InsertFrameEvent(testing_clock_->NowTicks(), 53 cast_environment_->Logging()->InsertFrameEvent(testing_clock_->NowTicks(),
56 kVideoFrameEncoded, 100u, 1u); 54 FRAME_ENCODED, VIDEO_EVENT,
55 100u, 1u);
57 cast_environment_->Logging()->InsertFrameEvent(testing_clock_->NowTicks(), 56 cast_environment_->Logging()->InsertFrameEvent(testing_clock_->NowTicks(),
58 kVideoFrameEncoded, 300u, 3u); 57 FRAME_ENCODED, VIDEO_EVENT,
59 cast_environment_->Logging()->InsertFrameEvent( 58 300u, 3u);
60 testing_clock_->NowTicks(), kVideoFrameSentToEncoder, 300u, 3u);
61 59
62 RtcpEventMap events; 60 RtcpEventMap events;
63 event_subscriber_.GetRtcpEventsAndReset(&events); 61 event_subscriber_.GetRtcpEventsAndReset(&events);
64 62
65 ASSERT_EQ(3u, events.size()); 63 ASSERT_EQ(3u, events.size());
66 64
67 RtcpEventMap::iterator it = events.begin(); 65 RtcpEventMap::iterator it = events.begin();
68 EXPECT_EQ(100u, it->first); 66 EXPECT_EQ(100u, it->first);
69 EXPECT_EQ(kVideoFrameEncoded, it->second.type); 67 EXPECT_EQ(FRAME_ENCODED, it->second.type);
70 68
71 ++it; 69 ++it;
72 EXPECT_EQ(200u, it->first); 70 EXPECT_EQ(200u, it->first);
73 EXPECT_EQ(kVideoFrameCaptureBegin, it->second.type); 71 EXPECT_EQ(FRAME_CAPTURE_BEGIN, it->second.type);
74 72
75 ++it; 73 ++it;
76 EXPECT_EQ(300u, it->first); 74 EXPECT_EQ(300u, it->first);
77 EXPECT_EQ(kVideoFrameEncoded, it->second.type); 75 EXPECT_EQ(FRAME_ENCODED, it->second.type);
78 } 76 }
79 77
80 TEST_F(SenderRtcpEventSubscriberTest, MapReset) { 78 TEST_F(SenderRtcpEventSubscriberTest, MapReset) {
81 cast_environment_->Logging()->InsertFrameEvent( 79 cast_environment_->Logging()->InsertFrameEvent(
82 testing_clock_->NowTicks(), kVideoFrameCaptureBegin, 100u, 1u); 80 testing_clock_->NowTicks(), FRAME_CAPTURE_BEGIN, VIDEO_EVENT, 100u, 1u);
83 81
84 RtcpEventMap events; 82 RtcpEventMap events;
85 event_subscriber_.GetRtcpEventsAndReset(&events); 83 event_subscriber_.GetRtcpEventsAndReset(&events);
86 EXPECT_EQ(1u, events.size()); 84 EXPECT_EQ(1u, events.size());
87 85
88 // Call again without any logging in between, should return empty map. 86 // Call again without any logging in between, should return empty map.
89 event_subscriber_.GetRtcpEventsAndReset(&events); 87 event_subscriber_.GetRtcpEventsAndReset(&events);
90 EXPECT_TRUE(events.empty()); 88 EXPECT_TRUE(events.empty());
91 } 89 }
92 90
93 TEST_F(SenderRtcpEventSubscriberTest, DropEventsWhenSizeExceeded) { 91 TEST_F(SenderRtcpEventSubscriberTest, DropEventsWhenSizeExceeded) {
94 for (uint32 i = 1u; i <= 10u; ++i) { 92 for (uint32 i = 1u; i <= 10u; ++i) {
95 cast_environment_->Logging()->InsertFrameEvent( 93 cast_environment_->Logging()->InsertFrameEvent(
96 testing_clock_->NowTicks(), kVideoFrameCaptureBegin, i * 10, i); 94 testing_clock_->NowTicks(), FRAME_CAPTURE_BEGIN, VIDEO_EVENT,
95 i * 10, i);
97 } 96 }
98 97
99 RtcpEventMap events; 98 RtcpEventMap events;
100 event_subscriber_.GetRtcpEventsAndReset(&events); 99 event_subscriber_.GetRtcpEventsAndReset(&events);
101 100
102 ASSERT_EQ(10u, events.size()); 101 ASSERT_EQ(10u, events.size());
103 EXPECT_EQ(10u, events.begin()->first); 102 EXPECT_EQ(10u, events.begin()->first);
104 EXPECT_EQ(100u, events.rbegin()->first); 103 EXPECT_EQ(100u, events.rbegin()->first);
105 104
106 for (uint32 i = 1u; i <= 11u; ++i) { 105 for (uint32 i = 1u; i <= 11u; ++i) {
107 cast_environment_->Logging()->InsertFrameEvent( 106 cast_environment_->Logging()->InsertFrameEvent(
108 testing_clock_->NowTicks(), kVideoFrameCaptureBegin, i * 10, i); 107 testing_clock_->NowTicks(), FRAME_CAPTURE_BEGIN, VIDEO_EVENT,
108 i * 10, i);
109 } 109 }
110 110
111 event_subscriber_.GetRtcpEventsAndReset(&events); 111 event_subscriber_.GetRtcpEventsAndReset(&events);
112 112
113 // Event with RTP timestamp 10 should have been dropped when 110 is inserted. 113 // Event with RTP timestamp 10 should have been dropped when 110 is inserted.
114 ASSERT_EQ(10u, events.size()); 114 ASSERT_EQ(10u, events.size());
115 EXPECT_EQ(20u, events.begin()->first); 115 EXPECT_EQ(20u, events.begin()->first);
116 EXPECT_EQ(110u, events.rbegin()->first); 116 EXPECT_EQ(110u, events.rbegin()->first);
117 } 117 }
118 118
119 } // namespace cast 119 } // namespace cast
120 } // namespace media 120 } // namespace media
OLDNEW
« no previous file with comments | « media/cast/rtcp/sender_rtcp_event_subscriber.cc ('k') | media/cast/test/end2end_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698