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

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

Issue 530343003: Landing Recent QUIC Changes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@Final_0828
Patch Set: Created 6 years, 3 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_sent_packet_manager.cc ('k') | net/quic/quic_session.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_sent_packet_manager.h" 5 #include "net/quic/quic_sent_packet_manager.h"
6 6
7 #include "base/stl_util.h" 7 #include "base/stl_util.h"
8 #include "net/quic/quic_flags.h" 8 #include "net/quic/quic_flags.h"
9 #include "net/quic/test_tools/quic_config_peer.h" 9 #include "net/quic/test_tools/quic_config_peer.h"
10 #include "net/quic/test_tools/quic_sent_packet_manager_peer.h" 10 #include "net/quic/test_tools/quic_sent_packet_manager_peer.h"
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 void VerifyUnackedPackets(QuicPacketSequenceNumber* packets, 73 void VerifyUnackedPackets(QuicPacketSequenceNumber* packets,
74 size_t num_packets) { 74 size_t num_packets) {
75 if (num_packets == 0) { 75 if (num_packets == 0) {
76 EXPECT_FALSE(manager_.HasUnackedPackets()); 76 EXPECT_FALSE(manager_.HasUnackedPackets());
77 EXPECT_EQ(0u, QuicSentPacketManagerPeer::GetNumRetransmittablePackets( 77 EXPECT_EQ(0u, QuicSentPacketManagerPeer::GetNumRetransmittablePackets(
78 &manager_)); 78 &manager_));
79 return; 79 return;
80 } 80 }
81 81
82 EXPECT_TRUE(manager_.HasUnackedPackets()); 82 EXPECT_TRUE(manager_.HasUnackedPackets());
83 EXPECT_EQ(packets[0], manager_.GetLeastUnackedSentPacket()); 83 EXPECT_EQ(packets[0], manager_.GetLeastUnacked());
84 for (size_t i = 0; i < num_packets; ++i) { 84 for (size_t i = 0; i < num_packets; ++i) {
85 EXPECT_TRUE(manager_.IsUnacked(packets[i])) << packets[i]; 85 EXPECT_TRUE(manager_.IsUnacked(packets[i])) << packets[i];
86 } 86 }
87 } 87 }
88 88
89 void VerifyRetransmittablePackets(QuicPacketSequenceNumber* packets, 89 void VerifyRetransmittablePackets(QuicPacketSequenceNumber* packets,
90 size_t num_packets) { 90 size_t num_packets) {
91 EXPECT_EQ(num_packets, 91 EXPECT_EQ(num_packets,
92 QuicSentPacketManagerPeer::GetNumRetransmittablePackets( 92 QuicSentPacketManagerPeer::GetNumRetransmittablePackets(
93 &manager_)); 93 &manager_));
(...skipping 542 matching lines...) Expand 10 before | Expand all | Expand 10 after
636 manager_.OnIncomingAck(ack_frame, clock_.Now()); 636 manager_.OnIncomingAck(ack_frame, clock_.Now());
637 } 637 }
638 638
639 // High water mark will be raised. 639 // High water mark will be raised.
640 QuicPacketSequenceNumber unacked[] = { 4, 5, 6, 7, 8, 9 }; 640 QuicPacketSequenceNumber unacked[] = { 4, 5, 6, 7, 8, 9 };
641 VerifyUnackedPackets(unacked, arraysize(unacked)); 641 VerifyUnackedPackets(unacked, arraysize(unacked));
642 QuicPacketSequenceNumber retransmittable[] = { 5, 6, 7, 8, 9 }; 642 QuicPacketSequenceNumber retransmittable[] = { 5, 6, 7, 8, 9 };
643 VerifyRetransmittablePackets(retransmittable, arraysize(retransmittable)); 643 VerifyRetransmittablePackets(retransmittable, arraysize(retransmittable));
644 } 644 }
645 645
646 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedSentPacket) { 646 TEST_F(QuicSentPacketManagerTest, GetLeastUnacked) {
647 EXPECT_EQ(0u, manager_.GetLeastUnackedSentPacket()); 647 EXPECT_EQ(1u, manager_.GetLeastUnacked());
648 } 648 }
649 649
650 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedSentPacketUnacked) { 650 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedUnacked) {
651 SerializedPacket serialized_packet(CreateDataPacket(1)); 651 SerializedPacket serialized_packet(CreateDataPacket(1));
652 652
653 manager_.OnSerializedPacket(serialized_packet); 653 manager_.OnSerializedPacket(serialized_packet);
654 EXPECT_EQ(1u, manager_.GetLeastUnackedSentPacket()); 654 EXPECT_EQ(1u, manager_.GetLeastUnacked());
655 } 655 }
656 656
657 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedSentPacketUnackedFec) { 657 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedUnackedFec) {
658 SerializedPacket serialized_packet(CreateFecPacket(1)); 658 SerializedPacket serialized_packet(CreateFecPacket(1));
659 659
660 manager_.OnSerializedPacket(serialized_packet); 660 manager_.OnSerializedPacket(serialized_packet);
661 EXPECT_EQ(1u, manager_.GetLeastUnackedSentPacket()); 661 EXPECT_EQ(1u, manager_.GetLeastUnacked());
662 } 662 }
663 663
664 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedPacketAndDiscard) { 664 TEST_F(QuicSentPacketManagerTest, GetLeastUnackedAndDiscard) {
665 VerifyUnackedPackets(NULL, 0); 665 VerifyUnackedPackets(NULL, 0);
666 666
667 SerializedPacket serialized_packet(CreateFecPacket(1)); 667 SerializedPacket serialized_packet(CreateFecPacket(1));
668 manager_.OnSerializedPacket(serialized_packet); 668 manager_.OnSerializedPacket(serialized_packet);
669 EXPECT_EQ(1u, manager_.GetLeastUnackedSentPacket()); 669 EXPECT_EQ(1u, manager_.GetLeastUnacked());
670 670
671 SerializedPacket serialized_packet2(CreateFecPacket(2)); 671 SerializedPacket serialized_packet2(CreateFecPacket(2));
672 manager_.OnSerializedPacket(serialized_packet2); 672 manager_.OnSerializedPacket(serialized_packet2);
673 EXPECT_EQ(1u, manager_.GetLeastUnackedSentPacket()); 673 EXPECT_EQ(1u, manager_.GetLeastUnacked());
674 674
675 SerializedPacket serialized_packet3(CreateFecPacket(3)); 675 SerializedPacket serialized_packet3(CreateFecPacket(3));
676 manager_.OnSerializedPacket(serialized_packet3); 676 manager_.OnSerializedPacket(serialized_packet3);
677 EXPECT_EQ(1u, manager_.GetLeastUnackedSentPacket()); 677 EXPECT_EQ(1u, manager_.GetLeastUnacked());
678 678
679 QuicPacketSequenceNumber unacked[] = { 1, 2, 3 }; 679 QuicPacketSequenceNumber unacked[] = { 1, 2, 3 };
680 VerifyUnackedPackets(unacked, arraysize(unacked)); 680 VerifyUnackedPackets(unacked, arraysize(unacked));
681 VerifyRetransmittablePackets(NULL, 0); 681 VerifyRetransmittablePackets(NULL, 0);
682 682
683 // Ack 2, which has never been sent, so there's no rtt update. 683 // Ack 2, which has never been sent, so there's no rtt update.
684 QuicAckFrame ack_frame; 684 QuicAckFrame ack_frame;
685 ack_frame.largest_observed = 2; 685 ack_frame.largest_observed = 2;
686 manager_.OnIncomingAck(ack_frame, clock_.Now()); 686 manager_.OnIncomingAck(ack_frame, clock_.Now());
687 687
688 EXPECT_EQ(3u, manager_.GetLeastUnackedSentPacket()); 688 EXPECT_EQ(3u, manager_.GetLeastUnacked());
689 } 689 }
690 690
691 TEST_F(QuicSentPacketManagerTest, GetSentTime) { 691 TEST_F(QuicSentPacketManagerTest, GetSentTime) {
692 VerifyUnackedPackets(NULL, 0); 692 VerifyUnackedPackets(NULL, 0);
693 693
694 SerializedPacket serialized_packet(CreateFecPacket(1)); 694 SerializedPacket serialized_packet(CreateFecPacket(1));
695 manager_.OnSerializedPacket(serialized_packet); 695 manager_.OnSerializedPacket(serialized_packet);
696 EXPECT_CALL(*send_algorithm_, OnPacketSent(_, _, 1, _, _)) 696 EXPECT_CALL(*send_algorithm_, OnPacketSent(_, _, 1, _, _))
697 .Times(1).WillOnce(Return(true)); 697 .Times(1).WillOnce(Return(true));
698 manager_.OnPacketSent(1, QuicTime::Zero(), kDefaultLength, NOT_RETRANSMISSION, 698 manager_.OnPacketSent(1, QuicTime::Zero(), kDefaultLength, NOT_RETRANSMISSION,
(...skipping 740 matching lines...) Expand 10 before | Expand all | Expand 10 after
1439 .WillOnce(Return(100 * kDefaultTCPMSS)); 1439 .WillOnce(Return(100 * kDefaultTCPMSS));
1440 EXPECT_CALL(*send_algorithm_, SetFromConfig(_, _)); 1440 EXPECT_CALL(*send_algorithm_, SetFromConfig(_, _));
1441 manager_.SetFromConfig(config); 1441 manager_.SetFromConfig(config);
1442 1442
1443 EXPECT_TRUE(manager_.using_pacing()); 1443 EXPECT_TRUE(manager_.using_pacing());
1444 } 1444 }
1445 1445
1446 } // namespace 1446 } // namespace
1447 } // namespace test 1447 } // namespace test
1448 } // namespace net 1448 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_sent_packet_manager.cc ('k') | net/quic/quic_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698