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

Side by Side Diff: media/cast/net/rtcp/receiver_rtcp_event_subscriber_unittest.cc

Issue 1905763002: Convert //media/cast from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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
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 "media/cast/net/rtcp/receiver_rtcp_event_subscriber.h" 5 #include "media/cast/net/rtcp/receiver_rtcp_event_subscriber.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9
10 #include <memory>
9 #include <utility> 11 #include <utility>
10 12
11 #include "base/memory/ref_counted.h" 13 #include "base/memory/ref_counted.h"
12 #include "base/memory/scoped_ptr.h"
13 #include "base/test/simple_test_tick_clock.h" 14 #include "base/test/simple_test_tick_clock.h"
14 #include "base/time/tick_clock.h" 15 #include "base/time/tick_clock.h"
15 #include "media/base/fake_single_thread_task_runner.h" 16 #include "media/base/fake_single_thread_task_runner.h"
16 #include "media/cast/cast_environment.h" 17 #include "media/cast/cast_environment.h"
17 #include "media/cast/logging/logging_defines.h" 18 #include "media/cast/logging/logging_defines.h"
18 #include "testing/gtest/include/gtest/gtest.h" 19 #include "testing/gtest/include/gtest/gtest.h"
19 20
20 namespace media { 21 namespace media {
21 namespace cast { 22 namespace cast {
22 23
23 namespace { 24 namespace {
24 25
25 const size_t kMaxEventEntries = 10u; 26 const size_t kMaxEventEntries = 10u;
26 const int64_t kDelayMs = 20L; 27 const int64_t kDelayMs = 20L;
27 28
28 } // namespace 29 } // namespace
29 30
30 class ReceiverRtcpEventSubscriberTest : public ::testing::Test { 31 class ReceiverRtcpEventSubscriberTest : public ::testing::Test {
31 protected: 32 protected:
32 ReceiverRtcpEventSubscriberTest() 33 ReceiverRtcpEventSubscriberTest()
33 : testing_clock_(new base::SimpleTestTickClock()), 34 : testing_clock_(new base::SimpleTestTickClock()),
34 task_runner_(new FakeSingleThreadTaskRunner(testing_clock_)), 35 task_runner_(new FakeSingleThreadTaskRunner(testing_clock_)),
35 cast_environment_( 36 cast_environment_(new CastEnvironment(
36 new CastEnvironment(scoped_ptr<base::TickClock>(testing_clock_), 37 std::unique_ptr<base::TickClock>(testing_clock_),
37 task_runner_, 38 task_runner_,
38 task_runner_, 39 task_runner_,
39 task_runner_)) {} 40 task_runner_)) {}
40 41
41 ~ReceiverRtcpEventSubscriberTest() override {} 42 ~ReceiverRtcpEventSubscriberTest() override {}
42 43
43 void TearDown() final { 44 void TearDown() final {
44 if (event_subscriber_) { 45 if (event_subscriber_) {
45 cast_environment_->logger()->Unsubscribe(event_subscriber_.get()); 46 cast_environment_->logger()->Unsubscribe(event_subscriber_.get());
46 event_subscriber_.reset(); 47 event_subscriber_.reset();
47 } 48 }
48 } 49 }
49 50
50 void Init(EventMediaType type) { 51 void Init(EventMediaType type) {
51 event_subscriber_.reset( 52 event_subscriber_.reset(
52 new ReceiverRtcpEventSubscriber(kMaxEventEntries, type)); 53 new ReceiverRtcpEventSubscriber(kMaxEventEntries, type));
53 cast_environment_->logger()->Subscribe(event_subscriber_.get()); 54 cast_environment_->logger()->Subscribe(event_subscriber_.get());
54 } 55 }
55 56
56 void InsertEvents() { 57 void InsertEvents() {
57 // Video events 58 // Video events
58 scoped_ptr<FrameEvent> playout_event(new FrameEvent()); 59 std::unique_ptr<FrameEvent> playout_event(new FrameEvent());
59 playout_event->timestamp = testing_clock_->NowTicks(); 60 playout_event->timestamp = testing_clock_->NowTicks();
60 playout_event->type = FRAME_PLAYOUT; 61 playout_event->type = FRAME_PLAYOUT;
61 playout_event->media_type = VIDEO_EVENT; 62 playout_event->media_type = VIDEO_EVENT;
62 playout_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100)); 63 playout_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100));
63 playout_event->frame_id = 2u; 64 playout_event->frame_id = 2u;
64 playout_event->delay_delta = base::TimeDelta::FromMilliseconds(kDelayMs); 65 playout_event->delay_delta = base::TimeDelta::FromMilliseconds(kDelayMs);
65 cast_environment_->logger()->DispatchFrameEvent(std::move(playout_event)); 66 cast_environment_->logger()->DispatchFrameEvent(std::move(playout_event));
66 67
67 scoped_ptr<FrameEvent> decode_event(new FrameEvent()); 68 std::unique_ptr<FrameEvent> decode_event(new FrameEvent());
68 decode_event->timestamp = testing_clock_->NowTicks(); 69 decode_event->timestamp = testing_clock_->NowTicks();
69 decode_event->type = FRAME_DECODED; 70 decode_event->type = FRAME_DECODED;
70 decode_event->media_type = VIDEO_EVENT; 71 decode_event->media_type = VIDEO_EVENT;
71 decode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(200)); 72 decode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(200));
72 decode_event->frame_id = 1u; 73 decode_event->frame_id = 1u;
73 cast_environment_->logger()->DispatchFrameEvent(std::move(decode_event)); 74 cast_environment_->logger()->DispatchFrameEvent(std::move(decode_event));
74 75
75 scoped_ptr<PacketEvent> receive_event(new PacketEvent()); 76 std::unique_ptr<PacketEvent> receive_event(new PacketEvent());
76 receive_event->timestamp = testing_clock_->NowTicks(); 77 receive_event->timestamp = testing_clock_->NowTicks();
77 receive_event->type = PACKET_RECEIVED; 78 receive_event->type = PACKET_RECEIVED;
78 receive_event->media_type = VIDEO_EVENT; 79 receive_event->media_type = VIDEO_EVENT;
79 receive_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(200)); 80 receive_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(200));
80 receive_event->frame_id = 2u; 81 receive_event->frame_id = 2u;
81 receive_event->packet_id = 1u; 82 receive_event->packet_id = 1u;
82 receive_event->max_packet_id = 10u; 83 receive_event->max_packet_id = 10u;
83 receive_event->size = 1024u; 84 receive_event->size = 1024u;
84 cast_environment_->logger()->DispatchPacketEvent(std::move(receive_event)); 85 cast_environment_->logger()->DispatchPacketEvent(std::move(receive_event));
85 86
(...skipping 20 matching lines...) Expand all
106 receive_event->type = PACKET_RECEIVED; 107 receive_event->type = PACKET_RECEIVED;
107 receive_event->media_type = AUDIO_EVENT; 108 receive_event->media_type = AUDIO_EVENT;
108 receive_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(400)); 109 receive_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(400));
109 receive_event->frame_id = 5u; 110 receive_event->frame_id = 5u;
110 receive_event->packet_id = 1u; 111 receive_event->packet_id = 1u;
111 receive_event->max_packet_id = 10u; 112 receive_event->max_packet_id = 10u;
112 receive_event->size = 128u; 113 receive_event->size = 128u;
113 cast_environment_->logger()->DispatchPacketEvent(std::move(receive_event)); 114 cast_environment_->logger()->DispatchPacketEvent(std::move(receive_event));
114 115
115 // Unrelated events 116 // Unrelated events
116 scoped_ptr<FrameEvent> encode_event(new FrameEvent()); 117 std::unique_ptr<FrameEvent> encode_event(new FrameEvent());
117 encode_event->timestamp = testing_clock_->NowTicks(); 118 encode_event->timestamp = testing_clock_->NowTicks();
118 encode_event->type = FRAME_ENCODED; 119 encode_event->type = FRAME_ENCODED;
119 encode_event->media_type = VIDEO_EVENT; 120 encode_event->media_type = VIDEO_EVENT;
120 encode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100)); 121 encode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100));
121 encode_event->frame_id = 1u; 122 encode_event->frame_id = 1u;
122 cast_environment_->logger()->DispatchFrameEvent(std::move(encode_event)); 123 cast_environment_->logger()->DispatchFrameEvent(std::move(encode_event));
123 124
124 encode_event.reset(new FrameEvent()); 125 encode_event.reset(new FrameEvent());
125 encode_event->timestamp = testing_clock_->NowTicks(); 126 encode_event->timestamp = testing_clock_->NowTicks();
126 encode_event->type = FRAME_ENCODED; 127 encode_event->type = FRAME_ENCODED;
127 encode_event->media_type = AUDIO_EVENT; 128 encode_event->media_type = AUDIO_EVENT;
128 encode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100)); 129 encode_event->rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(100));
129 encode_event->frame_id = 1u; 130 encode_event->frame_id = 1u;
130 cast_environment_->logger()->DispatchFrameEvent(std::move(encode_event)); 131 cast_environment_->logger()->DispatchFrameEvent(std::move(encode_event));
131 } 132 }
132 133
133 base::SimpleTestTickClock* testing_clock_; // Owned by CastEnvironment. 134 base::SimpleTestTickClock* testing_clock_; // Owned by CastEnvironment.
134 scoped_refptr<FakeSingleThreadTaskRunner> task_runner_; 135 scoped_refptr<FakeSingleThreadTaskRunner> task_runner_;
135 scoped_refptr<CastEnvironment> cast_environment_; 136 scoped_refptr<CastEnvironment> cast_environment_;
136 scoped_ptr<ReceiverRtcpEventSubscriber> event_subscriber_; 137 std::unique_ptr<ReceiverRtcpEventSubscriber> event_subscriber_;
137 }; 138 };
138 139
139 TEST_F(ReceiverRtcpEventSubscriberTest, LogVideoEvents) { 140 TEST_F(ReceiverRtcpEventSubscriberTest, LogVideoEvents) {
140 Init(VIDEO_EVENT); 141 Init(VIDEO_EVENT);
141 142
142 InsertEvents(); 143 InsertEvents();
143 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events; 144 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events;
144 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events); 145 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events);
145 EXPECT_EQ(3u, rtcp_events.size()); 146 EXPECT_EQ(3u, rtcp_events.size());
146 } 147 }
147 148
148 TEST_F(ReceiverRtcpEventSubscriberTest, LogAudioEvents) { 149 TEST_F(ReceiverRtcpEventSubscriberTest, LogAudioEvents) {
149 Init(AUDIO_EVENT); 150 Init(AUDIO_EVENT);
150 151
151 InsertEvents(); 152 InsertEvents();
152 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events; 153 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events;
153 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events); 154 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events);
154 EXPECT_EQ(3u, rtcp_events.size()); 155 EXPECT_EQ(3u, rtcp_events.size());
155 } 156 }
156 157
157 TEST_F(ReceiverRtcpEventSubscriberTest, DropEventsWhenSizeExceeded) { 158 TEST_F(ReceiverRtcpEventSubscriberTest, DropEventsWhenSizeExceeded) {
158 Init(VIDEO_EVENT); 159 Init(VIDEO_EVENT);
159 160
160 for (uint32_t i = 1u; i <= 10u; ++i) { 161 for (uint32_t i = 1u; i <= 10u; ++i) {
161 scoped_ptr<FrameEvent> decode_event(new FrameEvent()); 162 std::unique_ptr<FrameEvent> decode_event(new FrameEvent());
162 decode_event->timestamp = testing_clock_->NowTicks(); 163 decode_event->timestamp = testing_clock_->NowTicks();
163 decode_event->type = FRAME_DECODED; 164 decode_event->type = FRAME_DECODED;
164 decode_event->media_type = VIDEO_EVENT; 165 decode_event->media_type = VIDEO_EVENT;
165 decode_event->rtp_timestamp = RtpTimeTicks().Expand(i * 10); 166 decode_event->rtp_timestamp = RtpTimeTicks().Expand(i * 10);
166 decode_event->frame_id = i; 167 decode_event->frame_id = i;
167 cast_environment_->logger()->DispatchFrameEvent(std::move(decode_event)); 168 cast_environment_->logger()->DispatchFrameEvent(std::move(decode_event));
168 } 169 }
169 170
170 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events; 171 ReceiverRtcpEventSubscriber::RtcpEvents rtcp_events;
171 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events); 172 event_subscriber_->GetRtcpEventsWithRedundancy(&rtcp_events);
172 EXPECT_EQ(10u, rtcp_events.size()); 173 EXPECT_EQ(10u, rtcp_events.size());
173 } 174 }
174 175
175 } // namespace cast 176 } // namespace cast
176 } // namespace media 177 } // namespace media
OLDNEW
« no previous file with comments | « media/cast/net/pacing/paced_sender_unittest.cc ('k') | media/cast/net/rtcp/rtcp_builder_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698