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

Side by Side Diff: net/quic/quic_received_packet_manager_test.cc

Issue 1782143003: Remove FEC code from receive path. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@115997404
Patch Set: Created 4 years, 9 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 | « net/quic/quic_received_packet_manager.cc ('k') | net/quic/reliable_quic_stream_test.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "net/quic/quic_received_packet_manager.h" 5 #include "net/quic/quic_received_packet_manager.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <vector> 8 #include <vector>
9 9
10 #include "net/quic/quic_connection_stats.h" 10 #include "net/quic/quic_connection_stats.h"
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 196
197 void RecordPacketReceipt(QuicPacketNumber packet_number, 197 void RecordPacketReceipt(QuicPacketNumber packet_number,
198 QuicPacketEntropyHash entropy_hash, 198 QuicPacketEntropyHash entropy_hash,
199 QuicTime receipt_time) { 199 QuicTime receipt_time) {
200 QuicPacketHeader header; 200 QuicPacketHeader header;
201 header.packet_number = packet_number; 201 header.packet_number = packet_number;
202 header.entropy_hash = entropy_hash; 202 header.entropy_hash = entropy_hash;
203 received_manager_.RecordPacketReceived(0u, header, receipt_time); 203 received_manager_.RecordPacketReceived(0u, header, receipt_time);
204 } 204 }
205 205
206 void RecordPacketRevived(QuicPacketNumber packet_number) {
207 received_manager_.RecordPacketRevived(packet_number);
208 }
209
210 QuicConnectionStats stats_; 206 QuicConnectionStats stats_;
211 QuicReceivedPacketManager received_manager_; 207 QuicReceivedPacketManager received_manager_;
212 }; 208 };
213 209
214 TEST_F(QuicReceivedPacketManagerTest, ReceivedPacketEntropyHash) { 210 TEST_F(QuicReceivedPacketManagerTest, ReceivedPacketEntropyHash) {
215 vector<pair<QuicPacketNumber, QuicPacketEntropyHash>> entropies; 211 vector<pair<QuicPacketNumber, QuicPacketEntropyHash>> entropies;
216 entropies.push_back(std::make_pair(1, 12)); 212 entropies.push_back(std::make_pair(1, 12));
217 entropies.push_back(std::make_pair(7, 1)); 213 entropies.push_back(std::make_pair(7, 1));
218 entropies.push_back(std::make_pair(2, 33)); 214 entropies.push_back(std::make_pair(2, 33));
219 entropies.push_back(std::make_pair(5, 3)); 215 entropies.push_back(std::make_pair(5, 3));
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 EXPECT_TRUE(received_manager_.ack_frame_updated()); 343 EXPECT_TRUE(received_manager_.ack_frame_updated());
348 RecordPacketReceipt(6, 0); 344 RecordPacketReceipt(6, 0);
349 RecordPacketReceipt( 345 RecordPacketReceipt(
350 2, 0, QuicTime::Zero().Add(QuicTime::Delta::FromMilliseconds(1))); 346 2, 0, QuicTime::Zero().Add(QuicTime::Delta::FromMilliseconds(1)));
351 347
352 EXPECT_EQ(4u, stats_.max_sequence_reordering); 348 EXPECT_EQ(4u, stats_.max_sequence_reordering);
353 EXPECT_EQ(1000, stats_.max_time_reordering_us); 349 EXPECT_EQ(1000, stats_.max_time_reordering_us);
354 EXPECT_EQ(1u, stats_.packets_reordered); 350 EXPECT_EQ(1u, stats_.packets_reordered);
355 } 351 }
356 352
357 TEST_F(QuicReceivedPacketManagerTest, RevivedPacket) {
358 EXPECT_FALSE(received_manager_.ack_frame_updated());
359 RecordPacketReceipt(1, 0);
360 EXPECT_TRUE(received_manager_.ack_frame_updated());
361 RecordPacketReceipt(3, 0);
362 RecordPacketRevived(2);
363
364 QuicAckFrame ack;
365 received_manager_.UpdateReceivedPacketInfo(&ack, QuicTime::Zero());
366 EXPECT_FALSE(received_manager_.ack_frame_updated());
367 EXPECT_EQ(1u, ack.missing_packets.NumPacketsSlow());
368 EXPECT_EQ(2u, ack.missing_packets.Min());
369 EXPECT_EQ(2u, ack.latest_revived_packet);
370 }
371
372 TEST_F(QuicReceivedPacketManagerTest, PacketRevivedThenReceived) {
373 EXPECT_FALSE(received_manager_.ack_frame_updated());
374 RecordPacketReceipt(1, 0);
375 EXPECT_TRUE(received_manager_.ack_frame_updated());
376 RecordPacketReceipt(3, 0);
377 RecordPacketRevived(2);
378 RecordPacketReceipt(2, 0);
379
380 QuicAckFrame ack;
381 received_manager_.UpdateReceivedPacketInfo(&ack, QuicTime::Zero());
382 EXPECT_TRUE(ack.missing_packets.Empty());
383 EXPECT_EQ(0u, ack.latest_revived_packet);
384 }
385
386 TEST_F(QuicReceivedPacketManagerTest, RevivedPacketAckFrameUpdated) {
387 EXPECT_FALSE(received_manager_.ack_frame_updated());
388 RecordPacketReceipt(1, 0);
389 RecordPacketReceipt(3, 0);
390 EXPECT_TRUE(received_manager_.ack_frame_updated());
391
392 QuicAckFrame ack;
393 received_manager_.UpdateReceivedPacketInfo(&ack, QuicTime::Zero());
394 EXPECT_FALSE(received_manager_.ack_frame_updated());
395 EXPECT_EQ(1u, ack.missing_packets.NumPacketsSlow());
396 EXPECT_EQ(2u, ack.missing_packets.Min());
397 EXPECT_EQ(0u, ack.latest_revived_packet);
398
399 RecordPacketRevived(2);
400 EXPECT_TRUE(received_manager_.ack_frame_updated());
401 received_manager_.UpdateReceivedPacketInfo(&ack, QuicTime::Zero());
402 EXPECT_FALSE(received_manager_.ack_frame_updated());
403 EXPECT_EQ(1u, ack.missing_packets.NumPacketsSlow());
404 EXPECT_EQ(2u, ack.missing_packets.Min());
405 EXPECT_EQ(2u, ack.latest_revived_packet);
406 }
407
408 } // namespace 353 } // namespace
409 } // namespace test 354 } // namespace test
410 } // namespace net 355 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_received_packet_manager.cc ('k') | net/quic/reliable_quic_stream_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698