| 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/quic_packet_creator.h" | 5 #include "net/quic/quic_packet_creator.h" |
| 6 | 6 |
| 7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
| 8 #include "net/quic/crypto/null_encrypter.h" | 8 #include "net/quic/crypto/null_encrypter.h" |
| 9 #include "net/quic/crypto/quic_decrypter.h" | 9 #include "net/quic/crypto/quic_decrypter.h" |
| 10 #include "net/quic/crypto/quic_encrypter.h" | 10 #include "net/quic/crypto/quic_encrypter.h" |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 params.push_back(TestParams( | 66 params.push_back(TestParams( |
| 67 all_supported_versions[0], true, PACKET_1BYTE_CONNECTION_ID)); | 67 all_supported_versions[0], true, PACKET_1BYTE_CONNECTION_ID)); |
| 68 params.push_back(TestParams( | 68 params.push_back(TestParams( |
| 69 all_supported_versions[0], true, PACKET_4BYTE_CONNECTION_ID)); | 69 all_supported_versions[0], true, PACKET_4BYTE_CONNECTION_ID)); |
| 70 return params; | 70 return params; |
| 71 } | 71 } |
| 72 | 72 |
| 73 class QuicPacketCreatorTest : public ::testing::TestWithParam<TestParams> { | 73 class QuicPacketCreatorTest : public ::testing::TestWithParam<TestParams> { |
| 74 protected: | 74 protected: |
| 75 QuicPacketCreatorTest() | 75 QuicPacketCreatorTest() |
| 76 : server_framer_(SupportedVersions(GetParam().version), QuicTime::Zero(), | 76 : server_framer_(SupportedVersions(GetParam().version), |
| 77 true), | 77 QuicTime::Zero(), |
| 78 client_framer_(SupportedVersions(GetParam().version), QuicTime::Zero(), | 78 Perspective::IS_SERVER), |
| 79 false), | 79 client_framer_(SupportedVersions(GetParam().version), |
| 80 QuicTime::Zero(), |
| 81 Perspective::IS_CLIENT), |
| 80 connection_id_(2), | 82 connection_id_(2), |
| 81 data_("foo"), | 83 data_("foo"), |
| 82 creator_(connection_id_, &client_framer_, &mock_random_) { | 84 creator_(connection_id_, &client_framer_, &mock_random_) { |
| 83 creator_.set_connection_id_length(GetParam().connection_id_length); | 85 creator_.set_connection_id_length(GetParam().connection_id_length); |
| 84 client_framer_.set_visitor(&framer_visitor_); | 86 client_framer_.set_visitor(&framer_visitor_); |
| 85 client_framer_.set_received_entropy_calculator(&entropy_calculator_); | 87 client_framer_.set_received_entropy_calculator(&entropy_calculator_); |
| 86 server_framer_.set_visitor(&framer_visitor_); | 88 server_framer_.set_visitor(&framer_visitor_); |
| 87 } | 89 } |
| 88 | 90 |
| 89 ~QuicPacketCreatorTest() override {} | 91 ~QuicPacketCreatorTest() override {} |
| (...skipping 682 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 772 serialized_packet.packet->length()); | 774 serialized_packet.packet->length()); |
| 773 } else { | 775 } else { |
| 774 EXPECT_EQ(kDefaultMaxPacketSize, serialized_packet.packet->length()); | 776 EXPECT_EQ(kDefaultMaxPacketSize, serialized_packet.packet->length()); |
| 775 } | 777 } |
| 776 delete serialized_packet.packet; | 778 delete serialized_packet.packet; |
| 777 delete serialized_packet.retransmittable_frames; | 779 delete serialized_packet.retransmittable_frames; |
| 778 } | 780 } |
| 779 } | 781 } |
| 780 | 782 |
| 781 TEST_P(QuicPacketCreatorTest, SerializeVersionNegotiationPacket) { | 783 TEST_P(QuicPacketCreatorTest, SerializeVersionNegotiationPacket) { |
| 782 QuicFramerPeer::SetIsServer(&client_framer_, true); | 784 QuicFramerPeer::SetPerspective(&client_framer_, Perspective::IS_SERVER); |
| 783 QuicVersionVector versions; | 785 QuicVersionVector versions; |
| 784 versions.push_back(test::QuicVersionMax()); | 786 versions.push_back(test::QuicVersionMax()); |
| 785 scoped_ptr<QuicEncryptedPacket> encrypted( | 787 scoped_ptr<QuicEncryptedPacket> encrypted( |
| 786 creator_.SerializeVersionNegotiationPacket(versions)); | 788 creator_.SerializeVersionNegotiationPacket(versions)); |
| 787 | 789 |
| 788 { | 790 { |
| 789 InSequence s; | 791 InSequence s; |
| 790 EXPECT_CALL(framer_visitor_, OnPacket()); | 792 EXPECT_CALL(framer_visitor_, OnPacket()); |
| 791 EXPECT_CALL(framer_visitor_, OnUnauthenticatedPublicHeader(_)); | 793 EXPECT_CALL(framer_visitor_, OnUnauthenticatedPublicHeader(_)); |
| 792 EXPECT_CALL(framer_visitor_, OnVersionNegotiationPacket(_)); | 794 EXPECT_CALL(framer_visitor_, OnVersionNegotiationPacket(_)); |
| 793 } | 795 } |
| 794 QuicFramerPeer::SetIsServer(&client_framer_, false); | 796 QuicFramerPeer::SetPerspective(&client_framer_, Perspective::IS_CLIENT); |
| 795 client_framer_.ProcessPacket(*encrypted); | 797 client_framer_.ProcessPacket(*encrypted); |
| 796 } | 798 } |
| 797 | 799 |
| 798 TEST_P(QuicPacketCreatorTest, UpdatePacketSequenceNumberLengthLeastAwaiting) { | 800 TEST_P(QuicPacketCreatorTest, UpdatePacketSequenceNumberLengthLeastAwaiting) { |
| 799 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER, | 801 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER, |
| 800 QuicPacketCreatorPeer::NextSequenceNumberLength(&creator_)); | 802 QuicPacketCreatorPeer::NextSequenceNumberLength(&creator_)); |
| 801 | 803 |
| 802 size_t max_packets_per_fec_group = 10; | 804 size_t max_packets_per_fec_group = 10; |
| 803 creator_.set_max_packets_per_fec_group(max_packets_per_fec_group); | 805 creator_.set_max_packets_per_fec_group(max_packets_per_fec_group); |
| 804 QuicPacketCreatorPeer::SetSequenceNumber(&creator_, | 806 QuicPacketCreatorPeer::SetSequenceNumber(&creator_, |
| (...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1052 // After 64 calls, BoolSource will refresh the bucket - make sure it does. | 1054 // After 64 calls, BoolSource will refresh the bucket - make sure it does. |
| 1053 mock_random_.ChangeValue(); | 1055 mock_random_.ChangeValue(); |
| 1054 } | 1056 } |
| 1055 | 1057 |
| 1056 delete frames_[0].stream_frame; | 1058 delete frames_[0].stream_frame; |
| 1057 } | 1059 } |
| 1058 | 1060 |
| 1059 } // namespace | 1061 } // namespace |
| 1060 } // namespace test | 1062 } // namespace test |
| 1061 } // namespace net | 1063 } // namespace net |
| OLD | NEW |