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

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

Issue 23597045: Land Recent QUIC changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merged QuicPriority to RequestPriority changes Created 7 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 | Annotate | Revision Log
« no previous file with comments | « net/quic/quic_packet_creator.cc ('k') | net/quic/quic_packet_generator.h » ('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 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
326 creator_.SerializeVersionNegotiationPacket(versions)); 326 creator_.SerializeVersionNegotiationPacket(versions));
327 327
328 { 328 {
329 InSequence s; 329 InSequence s;
330 EXPECT_CALL(framer_visitor_, OnPacket()); 330 EXPECT_CALL(framer_visitor_, OnPacket());
331 EXPECT_CALL(framer_visitor_, OnVersionNegotiationPacket(_)); 331 EXPECT_CALL(framer_visitor_, OnVersionNegotiationPacket(_));
332 } 332 }
333 client_framer_.ProcessPacket(*encrypted.get()); 333 client_framer_.ProcessPacket(*encrypted.get());
334 } 334 }
335 335
336 TEST_F(QuicPacketCreatorTest, UpdatePacketSequenceNumberLengthLeastAwaiting) {
337 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER,
338 creator_.options()->send_sequence_number_length);
339
340 creator_.set_sequence_number(64);
341 creator_.UpdateSequenceNumberLength(2, 10000);
342 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER,
343 creator_.options()->send_sequence_number_length);
344
345 creator_.set_sequence_number(64 * 256);
346 creator_.UpdateSequenceNumberLength(2, 10000);
347 EXPECT_EQ(PACKET_2BYTE_SEQUENCE_NUMBER,
348 creator_.options()->send_sequence_number_length);
349
350 creator_.set_sequence_number(64 * 256 * 256);
351 creator_.UpdateSequenceNumberLength(2, 10000);
352 EXPECT_EQ(PACKET_4BYTE_SEQUENCE_NUMBER,
353 creator_.options()->send_sequence_number_length);
354
355 creator_.set_sequence_number(GG_UINT64_C(64) * 256 * 256 * 256 * 256);
356 creator_.UpdateSequenceNumberLength(2, 10000);
357 EXPECT_EQ(PACKET_6BYTE_SEQUENCE_NUMBER,
358 creator_.options()->send_sequence_number_length);
359 }
360
361 TEST_F(QuicPacketCreatorTest, UpdatePacketSequenceNumberLengthBandwidth) {
362 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER,
363 creator_.options()->send_sequence_number_length);
364
365 creator_.UpdateSequenceNumberLength(1, 10000);
366 EXPECT_EQ(PACKET_1BYTE_SEQUENCE_NUMBER,
367 creator_.options()->send_sequence_number_length);
368
369 creator_.UpdateSequenceNumberLength(1, 10000 * 256);
370 EXPECT_EQ(PACKET_2BYTE_SEQUENCE_NUMBER,
371 creator_.options()->send_sequence_number_length);
372
373 creator_.UpdateSequenceNumberLength(1, 10000 * 256 * 256);
374 EXPECT_EQ(PACKET_4BYTE_SEQUENCE_NUMBER,
375 creator_.options()->send_sequence_number_length);
376
377 creator_.UpdateSequenceNumberLength(
378 1, GG_UINT64_C(1000) * 256 * 256 * 256 * 256);
379 EXPECT_EQ(PACKET_6BYTE_SEQUENCE_NUMBER,
380 creator_.options()->send_sequence_number_length);
381 }
382
336 INSTANTIATE_TEST_CASE_P(ToggleVersionSerialization, 383 INSTANTIATE_TEST_CASE_P(ToggleVersionSerialization,
337 QuicPacketCreatorTest, 384 QuicPacketCreatorTest,
338 ::testing::Values(false, true)); 385 ::testing::Values(false, true));
339 386
340 TEST_P(QuicPacketCreatorTest, SerializeFrame) { 387 TEST_P(QuicPacketCreatorTest, SerializeFrame) {
341 if (!GetParam()) { 388 if (!GetParam()) {
342 creator_.StopSendingVersion(); 389 creator_.StopSendingVersion();
343 } 390 }
344 frames_.push_back(QuicFrame(new QuicStreamFrame( 391 frames_.push_back(QuicFrame(new QuicStreamFrame(
345 0u, false, 0u, StringPiece("")))); 392 0u, false, 0u, StringPiece(""))));
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
435 creator_.options()->send_guid_length, 482 creator_.options()->send_guid_length,
436 QuicPacketCreatorPeer::SendVersionInPacket(&creator_), 483 QuicPacketCreatorPeer::SendVersionInPacket(&creator_),
437 PACKET_1BYTE_SEQUENCE_NUMBER, 484 PACKET_1BYTE_SEQUENCE_NUMBER,
438 NOT_IN_FEC_GROUP), 485 NOT_IN_FEC_GROUP),
439 creator_.BytesFree()); 486 creator_.BytesFree());
440 } 487 }
441 488
442 } // namespace 489 } // namespace
443 } // namespace test 490 } // namespace test
444 } // namespace net 491 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_packet_creator.cc ('k') | net/quic/quic_packet_generator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698