OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/core/quic_connection.h" | 5 #include "net/quic/core/quic_connection.h" |
6 | 6 |
7 #include <errno.h> | 7 #include <errno.h> |
8 #include <memory> | 8 #include <memory> |
9 #include <ostream> | 9 #include <ostream> |
10 #include <utility> | 10 #include <utility> |
(...skipping 993 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1004 | 1004 |
1005 const QuicStopWaitingFrame InitStopWaitingFrame( | 1005 const QuicStopWaitingFrame InitStopWaitingFrame( |
1006 QuicPacketNumber least_unacked) { | 1006 QuicPacketNumber least_unacked) { |
1007 QuicStopWaitingFrame frame; | 1007 QuicStopWaitingFrame frame; |
1008 frame.least_unacked = least_unacked; | 1008 frame.least_unacked = least_unacked; |
1009 return frame; | 1009 return frame; |
1010 } | 1010 } |
1011 | 1011 |
1012 // Explicitly nack a packet. | 1012 // Explicitly nack a packet. |
1013 void NackPacket(QuicPacketNumber missing, QuicAckFrame* frame) { | 1013 void NackPacket(QuicPacketNumber missing, QuicAckFrame* frame) { |
1014 frame->packets.Remove(missing); | 1014 frame->packets.RemoveTestOnly(missing); |
1015 } | 1015 } |
1016 | 1016 |
1017 // Undo nacking a packet within the frame. | 1017 // Undo nacking a packet within the frame. |
1018 void AckPacket(QuicPacketNumber arrived, QuicAckFrame* frame) { | 1018 void AckPacket(QuicPacketNumber arrived, QuicAckFrame* frame) { |
1019 EXPECT_FALSE(frame->packets.Contains(arrived)); | 1019 EXPECT_FALSE(frame->packets.Contains(arrived)); |
1020 frame->packets.Add(arrived); | 1020 frame->packets.Add(arrived); |
1021 } | 1021 } |
1022 | 1022 |
1023 void TriggerConnectionClose() { | 1023 void TriggerConnectionClose() { |
1024 // Send an erroneous packet to close the connection. | 1024 // Send an erroneous packet to close the connection. |
(...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1752 EXPECT_EQ(8u, last_packet); | 1752 EXPECT_EQ(8u, last_packet); |
1753 SendAckPacketToPeer(); // Packet 9 | 1753 SendAckPacketToPeer(); // Packet 9 |
1754 if (GetParam().no_stop_waiting) { | 1754 if (GetParam().no_stop_waiting) { |
1755 // Expect no stop waiting frame is sent. | 1755 // Expect no stop waiting frame is sent. |
1756 EXPECT_EQ(0u, least_unacked()); | 1756 EXPECT_EQ(0u, least_unacked()); |
1757 } else { | 1757 } else { |
1758 EXPECT_EQ(7u, least_unacked()); | 1758 EXPECT_EQ(7u, least_unacked()); |
1759 } | 1759 } |
1760 } | 1760 } |
1761 | 1761 |
1762 // QuicConnection should record the the packet sent-time prior to sending the | 1762 // QuicConnection should record the packet sent-time prior to sending the |
1763 // packet. | 1763 // packet. |
1764 TEST_P(QuicConnectionTest, RecordSentTimeBeforePacketSent) { | 1764 TEST_P(QuicConnectionTest, RecordSentTimeBeforePacketSent) { |
1765 // We're using a MockClock for the tests, so we have complete control over the | 1765 // We're using a MockClock for the tests, so we have complete control over the |
1766 // time. | 1766 // time. |
1767 // Our recorded timestamp for the last packet sent time will be passed in to | 1767 // Our recorded timestamp for the last packet sent time will be passed in to |
1768 // the send_algorithm. Make sure that it is set to the correct value. | 1768 // the send_algorithm. Make sure that it is set to the correct value. |
1769 QuicTime actual_recorded_send_time = QuicTime::Zero(); | 1769 QuicTime actual_recorded_send_time = QuicTime::Zero(); |
1770 EXPECT_CALL(*send_algorithm_, OnPacketSent(_, _, _, _, _)) | 1770 EXPECT_CALL(*send_algorithm_, OnPacketSent(_, _, _, _, _)) |
1771 .WillOnce(DoAll(SaveArg<0>(&actual_recorded_send_time), Return(true))); | 1771 .WillOnce(DoAll(SaveArg<0>(&actual_recorded_send_time), Return(true))); |
1772 | 1772 |
(...skipping 3480 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5253 error_details, ConnectionCloseSource::FROM_PEER)); | 5253 error_details, ConnectionCloseSource::FROM_PEER)); |
5254 connection_.set_perspective(Perspective::IS_CLIENT); | 5254 connection_.set_perspective(Perspective::IS_CLIENT); |
5255 connection_.CloseConnection(QUIC_CRYPTO_HANDSHAKE_STATELESS_REJECT, | 5255 connection_.CloseConnection(QUIC_CRYPTO_HANDSHAKE_STATELESS_REJECT, |
5256 error_details, | 5256 error_details, |
5257 ConnectionCloseBehavior::SILENT_CLOSE); | 5257 ConnectionCloseBehavior::SILENT_CLOSE); |
5258 } | 5258 } |
5259 | 5259 |
5260 } // namespace | 5260 } // namespace |
5261 } // namespace test | 5261 } // namespace test |
5262 } // namespace net | 5262 } // namespace net |
OLD | NEW |