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

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

Issue 1515433002: Replace uses of raw uint32's with a type-checked RtpTimeTicks data type. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years 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 <stdint.h> 7 #include <stdint.h>
8 8
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "base/test/simple_test_tick_clock.h" 10 #include "base/test/simple_test_tick_clock.h"
(...skipping 16 matching lines...) Expand all
27 } 27 }
28 28
29 class TestRtpPacketTransport : public PacketSender { 29 class TestRtpPacketTransport : public PacketSender {
30 public: 30 public:
31 explicit TestRtpPacketTransport(RtpPacketizerConfig config) 31 explicit TestRtpPacketTransport(RtpPacketizerConfig config)
32 : config_(config), 32 : config_(config),
33 sequence_number_(kSeqNum), 33 sequence_number_(kSeqNum),
34 packets_sent_(0), 34 packets_sent_(0),
35 expected_number_of_packets_(0), 35 expected_number_of_packets_(0),
36 expected_packet_id_(0), 36 expected_packet_id_(0),
37 expected_frame_id_(0), 37 expected_frame_id_(0) {}
38 expected_rtp_timestamp_(0) {}
39 38
40 void VerifyRtpHeader(const RtpCastHeader& rtp_header) { 39 void VerifyRtpHeader(const RtpCastHeader& rtp_header) {
41 VerifyCommonRtpHeader(rtp_header); 40 VerifyCommonRtpHeader(rtp_header);
42 VerifyCastRtpHeader(rtp_header); 41 VerifyCastRtpHeader(rtp_header);
43 } 42 }
44 43
45 void VerifyCommonRtpHeader(const RtpCastHeader& rtp_header) { 44 void VerifyCommonRtpHeader(const RtpCastHeader& rtp_header) {
46 EXPECT_EQ(kPayload, rtp_header.payload_type); 45 EXPECT_EQ(kPayload, rtp_header.payload_type);
47 EXPECT_EQ(sequence_number_, rtp_header.sequence_number); 46 EXPECT_EQ(sequence_number_, rtp_header.sequence_number);
48 EXPECT_EQ(expected_rtp_timestamp_, rtp_header.rtp_timestamp); 47 EXPECT_EQ(expected_rtp_timestamp_, rtp_header.rtp_timestamp);
(...skipping 29 matching lines...) Expand all
78 } 77 }
79 78
80 int64 GetBytesSent() final { return 0; } 79 int64 GetBytesSent() final { return 0; }
81 80
82 size_t number_of_packets_received() const { return packets_sent_; } 81 size_t number_of_packets_received() const { return packets_sent_; }
83 82
84 void set_expected_number_of_packets(size_t expected_number_of_packets) { 83 void set_expected_number_of_packets(size_t expected_number_of_packets) {
85 expected_number_of_packets_ = expected_number_of_packets; 84 expected_number_of_packets_ = expected_number_of_packets;
86 } 85 }
87 86
88 void set_rtp_timestamp(uint32 rtp_timestamp) { 87 void set_rtp_timestamp(RtpTimeTicks rtp_timestamp) {
89 expected_rtp_timestamp_ = rtp_timestamp; 88 expected_rtp_timestamp_ = rtp_timestamp;
90 } 89 }
91 90
92 RtpPacketizerConfig config_; 91 RtpPacketizerConfig config_;
93 uint32 sequence_number_; 92 uint32 sequence_number_;
94 size_t packets_sent_; 93 size_t packets_sent_;
95 size_t number_of_packets_; 94 size_t number_of_packets_;
96 size_t expected_number_of_packets_; 95 size_t expected_number_of_packets_;
97 // Assuming packets arrive in sequence. 96 // Assuming packets arrive in sequence.
98 int expected_packet_id_; 97 int expected_packet_id_;
99 uint32 expected_frame_id_; 98 uint32 expected_frame_id_;
100 uint32 expected_rtp_timestamp_; 99 RtpTimeTicks expected_rtp_timestamp_;
101 100
102 private: 101 private:
103 DISALLOW_COPY_AND_ASSIGN(TestRtpPacketTransport); 102 DISALLOW_COPY_AND_ASSIGN(TestRtpPacketTransport);
104 }; 103 };
105 104
106 class RtpPacketizerTest : public ::testing::Test { 105 class RtpPacketizerTest : public ::testing::Test {
107 protected: 106 protected:
108 RtpPacketizerTest() 107 RtpPacketizerTest()
109 : task_runner_(new test::FakeSingleThreadTaskRunner(&testing_clock_)) { 108 : task_runner_(new test::FakeSingleThreadTaskRunner(&testing_clock_)) {
110 config_.sequence_number = kSeqNum; 109 config_.sequence_number = kSeqNum;
111 config_.ssrc = kSsrc; 110 config_.ssrc = kSsrc;
112 config_.payload_type = kPayload; 111 config_.payload_type = kPayload;
113 config_.max_payload_length = kMaxPacketLength; 112 config_.max_payload_length = kMaxPacketLength;
114 transport_.reset(new TestRtpPacketTransport(config_)); 113 transport_.reset(new TestRtpPacketTransport(config_));
115 pacer_.reset(new PacedSender(kTargetBurstSize, kMaxBurstSize, 114 pacer_.reset(new PacedSender(kTargetBurstSize, kMaxBurstSize,
116 &testing_clock_, nullptr, transport_.get(), 115 &testing_clock_, nullptr, transport_.get(),
117 task_runner_)); 116 task_runner_));
118 pacer_->RegisterVideoSsrc(config_.ssrc); 117 pacer_->RegisterVideoSsrc(config_.ssrc);
119 rtp_packetizer_.reset(new RtpPacketizer( 118 rtp_packetizer_.reset(new RtpPacketizer(
120 pacer_.get(), &packet_storage_, config_)); 119 pacer_.get(), &packet_storage_, config_));
121 video_frame_.dependency = EncodedFrame::DEPENDENT; 120 video_frame_.dependency = EncodedFrame::DEPENDENT;
122 video_frame_.frame_id = 0; 121 video_frame_.frame_id = 0;
123 video_frame_.referenced_frame_id = video_frame_.frame_id - 1; 122 video_frame_.referenced_frame_id = video_frame_.frame_id - 1;
124 video_frame_.data.assign(kFrameSize, 123); 123 video_frame_.data.assign(kFrameSize, 123);
125 video_frame_.rtp_timestamp = 0x0055aa11; 124 video_frame_.rtp_timestamp = RtpTimeTicks().Expand(UINT32_C(0x0055aa11));
126 } 125 }
127 126
128 void RunTasks(int during_ms) { 127 void RunTasks(int during_ms) {
129 for (int i = 0; i < during_ms; ++i) { 128 for (int i = 0; i < during_ms; ++i) {
130 // Call process the timers every 1 ms. 129 // Call process the timers every 1 ms.
131 testing_clock_.Advance(base::TimeDelta::FromMilliseconds(1)); 130 testing_clock_.Advance(base::TimeDelta::FromMilliseconds(1));
132 task_runner_->RunTasks(); 131 task_runner_->RunTasks();
133 } 132 }
134 } 133 }
135 134
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 video_frame_.reference_time = testing_clock_.NowTicks(); 182 video_frame_.reference_time = testing_clock_.NowTicks();
184 rtp_packetizer_->SendFrameAsPackets(video_frame_); 183 rtp_packetizer_->SendFrameAsPackets(video_frame_);
185 RunTasks(33 + 1); 184 RunTasks(33 + 1);
186 EXPECT_EQ(expected_num_of_packets, rtp_packetizer_->send_packet_count()); 185 EXPECT_EQ(expected_num_of_packets, rtp_packetizer_->send_packet_count());
187 EXPECT_EQ(kFrameSize, rtp_packetizer_->send_octet_count()); 186 EXPECT_EQ(kFrameSize, rtp_packetizer_->send_octet_count());
188 EXPECT_EQ(expected_num_of_packets, transport_->number_of_packets_received()); 187 EXPECT_EQ(expected_num_of_packets, transport_->number_of_packets_received());
189 } 188 }
190 189
191 } // namespace cast 190 } // namespace cast
192 } // namespace media 191 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698