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

Side by Side Diff: media/cast/net/rtp/rtp_packetizer_unittest.cc

Issue 1829163002: Lazily prune the multibuffer block cache. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: no export 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/rtp/rtp_packetizer.h" 5 #include "media/cast/net/rtp/rtp_packetizer.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "base/test/simple_test_tick_clock.h" 12 #include "base/test/simple_test_tick_clock.h"
13 #include "media/base/fake_single_thread_task_runner.h"
13 #include "media/cast/net/pacing/paced_sender.h" 14 #include "media/cast/net/pacing/paced_sender.h"
14 #include "media/cast/net/rtp/packet_storage.h" 15 #include "media/cast/net/rtp/packet_storage.h"
15 #include "media/cast/net/rtp/rtp_parser.h" 16 #include "media/cast/net/rtp/rtp_parser.h"
16 #include "media/cast/test/fake_single_thread_task_runner.h"
17 #include "testing/gmock/include/gmock/gmock.h" 17 #include "testing/gmock/include/gmock/gmock.h"
18 18
19 namespace media { 19 namespace media {
20 namespace cast { 20 namespace cast {
21 21
22 namespace { 22 namespace {
23 static const int kPayload = 127; 23 static const int kPayload = 127;
24 static const uint32_t kTimestampMs = 10; 24 static const uint32_t kTimestampMs = 10;
25 static const uint16_t kSeqNum = 33; 25 static const uint16_t kSeqNum = 33;
26 static const int kMaxPacketLength = 1500; 26 static const int kMaxPacketLength = 1500;
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 uint32_t expected_frame_id_; 105 uint32_t expected_frame_id_;
106 RtpTimeTicks expected_rtp_timestamp_; 106 RtpTimeTicks expected_rtp_timestamp_;
107 107
108 private: 108 private:
109 DISALLOW_COPY_AND_ASSIGN(TestRtpPacketTransport); 109 DISALLOW_COPY_AND_ASSIGN(TestRtpPacketTransport);
110 }; 110 };
111 111
112 class RtpPacketizerTest : public ::testing::Test { 112 class RtpPacketizerTest : public ::testing::Test {
113 protected: 113 protected:
114 RtpPacketizerTest() 114 RtpPacketizerTest()
115 : task_runner_(new test::FakeSingleThreadTaskRunner(&testing_clock_)) { 115 : task_runner_(new FakeSingleThreadTaskRunner(&testing_clock_)) {
116 config_.sequence_number = kSeqNum; 116 config_.sequence_number = kSeqNum;
117 config_.ssrc = kSsrc; 117 config_.ssrc = kSsrc;
118 config_.payload_type = kPayload; 118 config_.payload_type = kPayload;
119 config_.max_payload_length = kMaxPacketLength; 119 config_.max_payload_length = kMaxPacketLength;
120 transport_.reset(new TestRtpPacketTransport(config_)); 120 transport_.reset(new TestRtpPacketTransport(config_));
121 pacer_.reset(new PacedSender(kTargetBurstSize, kMaxBurstSize, 121 pacer_.reset(new PacedSender(kTargetBurstSize, kMaxBurstSize,
122 &testing_clock_, nullptr, transport_.get(), 122 &testing_clock_, nullptr, transport_.get(),
123 task_runner_)); 123 task_runner_));
124 pacer_->RegisterVideoSsrc(config_.ssrc); 124 pacer_->RegisterVideoSsrc(config_.ssrc);
125 rtp_packetizer_.reset(new RtpPacketizer( 125 rtp_packetizer_.reset(new RtpPacketizer(
126 pacer_.get(), &packet_storage_, config_)); 126 pacer_.get(), &packet_storage_, config_));
127 video_frame_.dependency = EncodedFrame::DEPENDENT; 127 video_frame_.dependency = EncodedFrame::DEPENDENT;
128 video_frame_.frame_id = 0; 128 video_frame_.frame_id = 0;
129 video_frame_.referenced_frame_id = video_frame_.frame_id - 1; 129 video_frame_.referenced_frame_id = video_frame_.frame_id - 1;
130 video_frame_.data.assign(kFrameSize, 123); 130 video_frame_.data.assign(kFrameSize, 123);
131 video_frame_.rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(0x0055aa11)); 131 video_frame_.rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(0x0055aa11));
132 } 132 }
133 133
134 void RunTasks(int during_ms) { 134 void RunTasks(int during_ms) {
135 for (int i = 0; i < during_ms; ++i) { 135 for (int i = 0; i < during_ms; ++i) {
136 // Call process the timers every 1 ms. 136 // Call process the timers every 1 ms.
137 testing_clock_.Advance(base::TimeDelta::FromMilliseconds(1)); 137 testing_clock_.Advance(base::TimeDelta::FromMilliseconds(1));
138 task_runner_->RunTasks(); 138 task_runner_->RunTasks();
139 } 139 }
140 } 140 }
141 141
142 base::SimpleTestTickClock testing_clock_; 142 base::SimpleTestTickClock testing_clock_;
143 scoped_refptr<test::FakeSingleThreadTaskRunner> task_runner_; 143 scoped_refptr<FakeSingleThreadTaskRunner> task_runner_;
144 EncodedFrame video_frame_; 144 EncodedFrame video_frame_;
145 PacketStorage packet_storage_; 145 PacketStorage packet_storage_;
146 RtpPacketizerConfig config_; 146 RtpPacketizerConfig config_;
147 scoped_ptr<TestRtpPacketTransport> transport_; 147 scoped_ptr<TestRtpPacketTransport> transport_;
148 scoped_ptr<PacedSender> pacer_; 148 scoped_ptr<PacedSender> pacer_;
149 scoped_ptr<RtpPacketizer> rtp_packetizer_; 149 scoped_ptr<RtpPacketizer> rtp_packetizer_;
150 150
151 private: 151 private:
152 DISALLOW_COPY_AND_ASSIGN(RtpPacketizerTest); 152 DISALLOW_COPY_AND_ASSIGN(RtpPacketizerTest);
153 }; 153 };
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 video_frame_.reference_time = testing_clock_.NowTicks(); 189 video_frame_.reference_time = testing_clock_.NowTicks();
190 rtp_packetizer_->SendFrameAsPackets(video_frame_); 190 rtp_packetizer_->SendFrameAsPackets(video_frame_);
191 RunTasks(33 + 1); 191 RunTasks(33 + 1);
192 EXPECT_EQ(expected_num_of_packets, rtp_packetizer_->send_packet_count()); 192 EXPECT_EQ(expected_num_of_packets, rtp_packetizer_->send_packet_count());
193 EXPECT_EQ(kFrameSize, rtp_packetizer_->send_octet_count()); 193 EXPECT_EQ(kFrameSize, rtp_packetizer_->send_octet_count());
194 EXPECT_EQ(expected_num_of_packets, transport_->number_of_packets_received()); 194 EXPECT_EQ(expected_num_of_packets, transport_->number_of_packets_received());
195 } 195 }
196 196
197 } // namespace cast 197 } // namespace cast
198 } // namespace media 198 } // namespace media
OLDNEW
« no previous file with comments | « media/cast/net/rtcp/rtcp_utility_unittest.cc ('k') | media/cast/receiver/frame_receiver_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698