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

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

Issue 181483006: PACKET_NBYTE_GUID -> PACKET_NBYTE_CONNECTION_ID (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: small comment fix Created 6 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « net/quic/quic_packet_creator.cc ('k') | net/quic/quic_packet_generator_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 (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 15 matching lines...) Expand all
26 namespace net { 26 namespace net {
27 namespace test { 27 namespace test {
28 namespace { 28 namespace {
29 29
30 class QuicPacketCreatorTest : public ::testing::TestWithParam<bool> { 30 class QuicPacketCreatorTest : public ::testing::TestWithParam<bool> {
31 protected: 31 protected:
32 QuicPacketCreatorTest() 32 QuicPacketCreatorTest()
33 : server_framer_(QuicSupportedVersions(), QuicTime::Zero(), true), 33 : server_framer_(QuicSupportedVersions(), QuicTime::Zero(), true),
34 client_framer_(QuicSupportedVersions(), QuicTime::Zero(), false), 34 client_framer_(QuicSupportedVersions(), QuicTime::Zero(), false),
35 sequence_number_(0), 35 sequence_number_(0),
36 guid_(2), 36 connection_id_(2),
37 data_("foo"), 37 data_("foo"),
38 creator_(guid_, &client_framer_, &mock_random_, false) { 38 creator_(connection_id_, &client_framer_, &mock_random_, false) {
39 client_framer_.set_visitor(&framer_visitor_); 39 client_framer_.set_visitor(&framer_visitor_);
40 server_framer_.set_visitor(&framer_visitor_); 40 server_framer_.set_visitor(&framer_visitor_);
41 } 41 }
42 ~QuicPacketCreatorTest() { 42 ~QuicPacketCreatorTest() {
43 } 43 }
44 44
45 void ProcessPacket(QuicPacket* packet) { 45 void ProcessPacket(QuicPacket* packet) {
46 scoped_ptr<QuicEncryptedPacket> encrypted( 46 scoped_ptr<QuicEncryptedPacket> encrypted(
47 server_framer_.EncryptPacket(ENCRYPTION_NONE, sequence_number_, 47 server_framer_.EncryptPacket(ENCRYPTION_NONE, sequence_number_,
48 *packet)); 48 *packet));
(...skipping 10 matching lines...) Expand all
59 EXPECT_EQ(stream_id, frame.stream_frame->stream_id); 59 EXPECT_EQ(stream_id, frame.stream_frame->stream_id);
60 scoped_ptr<string> frame_data(frame.stream_frame->GetDataAsString()); 60 scoped_ptr<string> frame_data(frame.stream_frame->GetDataAsString());
61 EXPECT_EQ(data, *frame_data); 61 EXPECT_EQ(data, *frame_data);
62 EXPECT_EQ(offset, frame.stream_frame->offset); 62 EXPECT_EQ(offset, frame.stream_frame->offset);
63 EXPECT_EQ(fin, frame.stream_frame->fin); 63 EXPECT_EQ(fin, frame.stream_frame->fin);
64 } 64 }
65 65
66 // Returns the number of bytes consumed by the header of packet, including 66 // Returns the number of bytes consumed by the header of packet, including
67 // the version, that is not in an FEC group. 67 // the version, that is not in an FEC group.
68 size_t GetPacketHeaderOverhead() { 68 size_t GetPacketHeaderOverhead() {
69 return GetPacketHeaderSize(creator_.options()->send_guid_length, 69 return GetPacketHeaderSize(creator_.options()->send_connection_id_length,
70 kIncludeVersion, 70 kIncludeVersion,
71 creator_.options()->send_sequence_number_length, 71 creator_.options()->send_sequence_number_length,
72 NOT_IN_FEC_GROUP); 72 NOT_IN_FEC_GROUP);
73 } 73 }
74 74
75 // Returns the number of bytes of overhead that will be added to a packet 75 // Returns the number of bytes of overhead that will be added to a packet
76 // of maximum length. 76 // of maximum length.
77 size_t GetEncryptionOverhead() { 77 size_t GetEncryptionOverhead() {
78 return creator_.options()->max_packet_length - 78 return creator_.options()->max_packet_length -
79 client_framer_.GetMaxPlaintextSize( 79 client_framer_.GetMaxPlaintextSize(
80 creator_.options()->max_packet_length); 80 creator_.options()->max_packet_length);
81 } 81 }
82 82
83 // Returns the number of bytes consumed by the non-data fields of a stream 83 // Returns the number of bytes consumed by the non-data fields of a stream
84 // frame, assuming it is the last frame in the packet 84 // frame, assuming it is the last frame in the packet
85 size_t GetStreamFrameOverhead() { 85 size_t GetStreamFrameOverhead() {
86 return QuicFramer::GetMinStreamFrameSize( 86 return QuicFramer::GetMinStreamFrameSize(
87 client_framer_.version(), kStreamId, kOffset, true); 87 client_framer_.version(), kStreamId, kOffset, true);
88 } 88 }
89 89
90 static const QuicStreamId kStreamId = 1u; 90 static const QuicStreamId kStreamId = 1u;
91 static const QuicStreamOffset kOffset = 1u; 91 static const QuicStreamOffset kOffset = 1u;
92 92
93 QuicFrames frames_; 93 QuicFrames frames_;
94 QuicFramer server_framer_; 94 QuicFramer server_framer_;
95 QuicFramer client_framer_; 95 QuicFramer client_framer_;
96 testing::StrictMock<MockFramerVisitor> framer_visitor_; 96 testing::StrictMock<MockFramerVisitor> framer_visitor_;
97 QuicPacketSequenceNumber sequence_number_; 97 QuicPacketSequenceNumber sequence_number_;
98 QuicGuid guid_; 98 QuicConnectionId connection_id_;
99 string data_; 99 string data_;
100 MockRandom mock_random_; 100 MockRandom mock_random_;
101 QuicPacketCreator creator_; 101 QuicPacketCreator creator_;
102 }; 102 };
103 103
104 TEST_F(QuicPacketCreatorTest, SerializeFrames) { 104 TEST_F(QuicPacketCreatorTest, SerializeFrames) {
105 frames_.push_back(QuicFrame(new QuicAckFrame(0u, QuicTime::Zero(), 0u))); 105 frames_.push_back(QuicFrame(new QuicAckFrame(0u, QuicTime::Zero(), 0u)));
106 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, false, 0u, IOVector()))); 106 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, false, 0u, IOVector())));
107 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, true, 0u, IOVector()))); 107 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, true, 0u, IOVector())));
108 SerializedPacket serialized = creator_.SerializeAllFrames(frames_); 108 SerializedPacket serialized = creator_.SerializeAllFrames(frames_);
(...skipping 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 574
575 TEST_P(QuicPacketCreatorTest, AddFrameAndSerialize) { 575 TEST_P(QuicPacketCreatorTest, AddFrameAndSerialize) {
576 if (!GetParam()) { 576 if (!GetParam()) {
577 creator_.StopSendingVersion(); 577 creator_.StopSendingVersion();
578 } 578 }
579 const size_t max_plaintext_size = 579 const size_t max_plaintext_size =
580 client_framer_.GetMaxPlaintextSize(creator_.options()->max_packet_length); 580 client_framer_.GetMaxPlaintextSize(creator_.options()->max_packet_length);
581 EXPECT_FALSE(creator_.HasPendingFrames()); 581 EXPECT_FALSE(creator_.HasPendingFrames());
582 EXPECT_EQ(max_plaintext_size - 582 EXPECT_EQ(max_plaintext_size -
583 GetPacketHeaderSize( 583 GetPacketHeaderSize(
584 creator_.options()->send_guid_length, 584 creator_.options()->send_connection_id_length,
585 QuicPacketCreatorPeer::SendVersionInPacket(&creator_), 585 QuicPacketCreatorPeer::SendVersionInPacket(&creator_),
586 PACKET_1BYTE_SEQUENCE_NUMBER, NOT_IN_FEC_GROUP), 586 PACKET_1BYTE_SEQUENCE_NUMBER, NOT_IN_FEC_GROUP),
587 creator_.BytesFree()); 587 creator_.BytesFree());
588 588
589 // Add a variety of frame types and then a padding frame. 589 // Add a variety of frame types and then a padding frame.
590 QuicAckFrame ack_frame(0u, QuicTime::Zero(), 0u); 590 QuicAckFrame ack_frame(0u, QuicTime::Zero(), 0u);
591 EXPECT_TRUE(creator_.AddSavedFrame(QuicFrame(&ack_frame))); 591 EXPECT_TRUE(creator_.AddSavedFrame(QuicFrame(&ack_frame)));
592 EXPECT_TRUE(creator_.HasPendingFrames()); 592 EXPECT_TRUE(creator_.HasPendingFrames());
593 593
594 QuicCongestionFeedbackFrame congestion_feedback; 594 QuicCongestionFeedbackFrame congestion_feedback;
(...skipping 23 matching lines...) Expand all
618 ASSERT_TRUE(serialized.retransmittable_frames); 618 ASSERT_TRUE(serialized.retransmittable_frames);
619 RetransmittableFrames* retransmittable = serialized.retransmittable_frames; 619 RetransmittableFrames* retransmittable = serialized.retransmittable_frames;
620 ASSERT_EQ(1u, retransmittable->frames().size()); 620 ASSERT_EQ(1u, retransmittable->frames().size());
621 EXPECT_EQ(STREAM_FRAME, retransmittable->frames()[0].type); 621 EXPECT_EQ(STREAM_FRAME, retransmittable->frames()[0].type);
622 ASSERT_TRUE(retransmittable->frames()[0].stream_frame); 622 ASSERT_TRUE(retransmittable->frames()[0].stream_frame);
623 delete serialized.retransmittable_frames; 623 delete serialized.retransmittable_frames;
624 624
625 EXPECT_FALSE(creator_.HasPendingFrames()); 625 EXPECT_FALSE(creator_.HasPendingFrames());
626 EXPECT_EQ(max_plaintext_size - 626 EXPECT_EQ(max_plaintext_size -
627 GetPacketHeaderSize( 627 GetPacketHeaderSize(
628 creator_.options()->send_guid_length, 628 creator_.options()->send_connection_id_length,
629 QuicPacketCreatorPeer::SendVersionInPacket(&creator_), 629 QuicPacketCreatorPeer::SendVersionInPacket(&creator_),
630 PACKET_1BYTE_SEQUENCE_NUMBER, 630 PACKET_1BYTE_SEQUENCE_NUMBER,
631 NOT_IN_FEC_GROUP), 631 NOT_IN_FEC_GROUP),
632 creator_.BytesFree()); 632 creator_.BytesFree());
633 } 633 }
634 634
635 TEST_F(QuicPacketCreatorTest, EntropyFlag) { 635 TEST_F(QuicPacketCreatorTest, EntropyFlag) {
636 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, false, 0u, IOVector()))); 636 frames_.push_back(QuicFrame(new QuicStreamFrame(0u, false, 0u, IOVector())));
637 637
638 for (int i = 0; i < 2; ++i) { 638 for (int i = 0; i < 2; ++i) {
(...skipping 12 matching lines...) Expand all
651 // After 64 calls, BoolSource will refresh the bucket - make sure it does. 651 // After 64 calls, BoolSource will refresh the bucket - make sure it does.
652 mock_random_.ChangeValue(); 652 mock_random_.ChangeValue();
653 } 653 }
654 654
655 delete frames_[0].stream_frame; 655 delete frames_[0].stream_frame;
656 } 656 }
657 657
658 } // namespace 658 } // namespace
659 } // namespace test 659 } // namespace test
660 } // namespace net 660 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_packet_creator.cc ('k') | net/quic/quic_packet_generator_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698