OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 17 matching lines...) Expand all Loading... | |
28 ~SendTimeHistoryTest() {} | 28 ~SendTimeHistoryTest() {} |
29 | 29 |
30 virtual void SetUp() {} | 30 virtual void SetUp() {} |
31 | 31 |
32 virtual void TearDown() {} | 32 virtual void TearDown() {} |
33 | 33 |
34 void AddPacketWithSendTime(uint16_t sequence_number, | 34 void AddPacketWithSendTime(uint16_t sequence_number, |
35 size_t length, | 35 size_t length, |
36 bool was_paced, | 36 bool was_paced, |
37 int64_t send_time_ms) { | 37 int64_t send_time_ms) { |
38 history_.AddAndRemoveOld(sequence_number, length, was_paced); | 38 history_.AddAndRemoveOld(sequence_number, length, was_paced, |
39 PacketInfo::kNotAProbe); | |
danilchap
2016/05/31 13:06:49
better propagate and test probe_cluster_id field t
philipel
2016/05/31 14:34:58
Integrated testing of cluster id into existing tes
| |
39 history_.OnSentPacket(sequence_number, send_time_ms); | 40 history_.OnSentPacket(sequence_number, send_time_ms); |
40 } | 41 } |
41 | 42 |
42 webrtc::SimulatedClock clock_; | 43 webrtc::SimulatedClock clock_; |
43 SendTimeHistory history_; | 44 SendTimeHistory history_; |
44 }; | 45 }; |
45 | 46 |
46 // Help class extended so we can do EXPECT_EQ and collections. | 47 // Help class extended so we can do EXPECT_EQ and collections. |
47 class PacketInfo : public webrtc::PacketInfo { | 48 class PacketInfo : public webrtc::PacketInfo { |
48 public: | 49 public: |
49 PacketInfo() : webrtc::PacketInfo(-1, 0, 0, 0, 0, false) {} | 50 PacketInfo() |
51 : webrtc::PacketInfo(-1, | |
52 0, | |
53 0, | |
54 0, | |
55 0, | |
56 false, | |
57 webrtc::PacketInfo::kNotAProbe) {} | |
50 PacketInfo(int64_t arrival_time_ms, uint16_t sequence_number) | 58 PacketInfo(int64_t arrival_time_ms, uint16_t sequence_number) |
51 : PacketInfo(arrival_time_ms, 0, sequence_number, 0, false) {} | 59 : PacketInfo(arrival_time_ms, 0, sequence_number, 0, false) {} |
52 PacketInfo(int64_t arrival_time_ms, | 60 PacketInfo(int64_t arrival_time_ms, |
53 int64_t send_time_ms, | 61 int64_t send_time_ms, |
54 uint16_t sequence_number, | 62 uint16_t sequence_number, |
55 size_t payload_size, | 63 size_t payload_size, |
56 bool was_paced) | 64 bool was_paced) |
57 : webrtc::PacketInfo(-1, | 65 : webrtc::PacketInfo(-1, |
58 arrival_time_ms, | 66 arrival_time_ms, |
59 send_time_ms, | 67 send_time_ms, |
60 sequence_number, | 68 sequence_number, |
61 payload_size, | 69 payload_size, |
62 was_paced) {} | 70 was_paced, |
71 webrtc::PacketInfo::kNotAProbe) {} | |
63 bool operator==(const PacketInfo& other) const { | 72 bool operator==(const PacketInfo& other) const { |
64 return arrival_time_ms == other.arrival_time_ms && | 73 return arrival_time_ms == other.arrival_time_ms && |
65 send_time_ms == other.send_time_ms && | 74 send_time_ms == other.send_time_ms && |
66 sequence_number == other.sequence_number && | 75 sequence_number == other.sequence_number && |
67 payload_size == other.payload_size && was_paced == other.was_paced; | 76 payload_size == other.payload_size && was_paced == other.was_paced && |
77 probe_cluster_id == other.probe_cluster_id; | |
68 } | 78 } |
69 }; | 79 }; |
70 | 80 |
71 TEST_F(SendTimeHistoryTest, AddRemoveOne) { | 81 TEST_F(SendTimeHistoryTest, AddRemoveOne) { |
72 const uint16_t kSeqNo = 10; | 82 const uint16_t kSeqNo = 10; |
73 const PacketInfo kSentPacket(0, 1, kSeqNo, 1, true); | 83 const PacketInfo kSentPacket(0, 1, kSeqNo, 1, true); |
74 AddPacketWithSendTime(kSeqNo, 1, true, 1); | 84 AddPacketWithSendTime(kSeqNo, 1, true, 1); |
75 | 85 |
76 PacketInfo received_packet(0, 0, kSeqNo, 0, false); | 86 PacketInfo received_packet(0, 0, kSeqNo, 0, false); |
77 EXPECT_TRUE(history_.GetInfo(&received_packet, false)); | 87 EXPECT_TRUE(history_.GetInfo(&received_packet, false)); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
114 sent_packets.push_back(PacketInfo(0, static_cast<int64_t>(i), | 124 sent_packets.push_back(PacketInfo(0, static_cast<int64_t>(i), |
115 static_cast<uint16_t>(i), kPacketSize, | 125 static_cast<uint16_t>(i), kPacketSize, |
116 kPaced)); | 126 kPaced)); |
117 received_packets.push_back( | 127 received_packets.push_back( |
118 PacketInfo(static_cast<int64_t>(i) + kTransmissionTime, 0, | 128 PacketInfo(static_cast<int64_t>(i) + kTransmissionTime, 0, |
119 static_cast<uint16_t>(i), kPacketSize, false)); | 129 static_cast<uint16_t>(i), kPacketSize, false)); |
120 } | 130 } |
121 for (size_t i = 0; i < num_items; ++i) { | 131 for (size_t i = 0; i < num_items; ++i) { |
122 history_.AddAndRemoveOld(sent_packets[i].sequence_number, | 132 history_.AddAndRemoveOld(sent_packets[i].sequence_number, |
123 sent_packets[i].payload_size, | 133 sent_packets[i].payload_size, |
124 sent_packets[i].was_paced); | 134 sent_packets[i].was_paced, PacketInfo::kNotAProbe); |
danilchap
2016/05/31 13:06:50
sent_packets[i].probe_cluster_id
philipel
2016/05/31 14:34:58
Done.
| |
125 } | 135 } |
126 for (size_t i = 0; i < num_items; ++i) | 136 for (size_t i = 0; i < num_items; ++i) |
127 history_.OnSentPacket(sent_packets[i].sequence_number, | 137 history_.OnSentPacket(sent_packets[i].sequence_number, |
128 sent_packets[i].send_time_ms); | 138 sent_packets[i].send_time_ms); |
129 std::random_shuffle(received_packets.begin(), received_packets.end()); | 139 std::random_shuffle(received_packets.begin(), received_packets.end()); |
130 for (size_t i = 0; i < num_items; ++i) { | 140 for (size_t i = 0; i < num_items; ++i) { |
131 PacketInfo packet = received_packets[i]; | 141 PacketInfo packet = received_packets[i]; |
132 EXPECT_TRUE(history_.GetInfo(&packet, false)); | 142 EXPECT_TRUE(history_.GetInfo(&packet, false)); |
133 PacketInfo sent_packet = sent_packets[packet.sequence_number]; | 143 PacketInfo sent_packet = sent_packets[packet.sequence_number]; |
134 sent_packet.arrival_time_ms = packet.arrival_time_ms; | 144 sent_packet.arrival_time_ms = packet.arrival_time_ms; |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
225 EXPECT_TRUE(history_.GetInfo(&info2, true)); | 235 EXPECT_TRUE(history_.GetInfo(&info2, true)); |
226 EXPECT_EQ(packets[1], info2); | 236 EXPECT_EQ(packets[1], info2); |
227 | 237 |
228 PacketInfo info3(0, 0, packets[2].sequence_number, 0, false); | 238 PacketInfo info3(0, 0, packets[2].sequence_number, 0, false); |
229 EXPECT_TRUE(history_.GetInfo(&info3, true)); | 239 EXPECT_TRUE(history_.GetInfo(&info3, true)); |
230 EXPECT_EQ(packets[2], info3); | 240 EXPECT_EQ(packets[2], info3); |
231 } | 241 } |
232 | 242 |
233 } // namespace test | 243 } // namespace test |
234 } // namespace webrtc | 244 } // namespace webrtc |
OLD | NEW |