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

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

Issue 1531603002: Set QuicPacketCreator's should_fec_protect_next_packet only within QuicPacketCreator. No functiona… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@110173060
Patch Set: Created 5 years 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_packet_creator.cc ('k') | net/quic/quic_packet_generator.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 <stdint.h> 7 #include <stdint.h>
8 8
9 #include "base/stl_util.h" 9 #include "base/stl_util.h"
10 #include "net/quic/crypto/null_encrypter.h" 10 #include "net/quic/crypto/null_encrypter.h"
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 // Should return false since we do not have enough packets in the FEC group to 492 // Should return false since we do not have enough packets in the FEC group to
493 // trigger an FEC packet. 493 // trigger an FEC packet.
494 ASSERT_FALSE(creator_.ShouldSendFec(/*force_close=*/false)); 494 ASSERT_FALSE(creator_.ShouldSendFec(/*force_close=*/false));
495 // Should return true since there are packets in the FEC group. 495 // Should return true since there are packets in the FEC group.
496 ASSERT_TRUE(creator_.ShouldSendFec(/*force_close=*/true)); 496 ASSERT_TRUE(creator_.ShouldSendFec(/*force_close=*/true));
497 497
498 // Force generation of FEC packet. 498 // Force generation of FEC packet.
499 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 499 EXPECT_CALL(delegate_, OnSerializedPacket(_))
500 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket)); 500 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket));
501 // Turn off FEC protection. 501 // Turn off FEC protection.
502 creator_.set_should_fec_protect_next_packet(false);
503 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true, 502 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true,
504 /*is_fec_timeout=*/false); 503 /*is_fec_timeout=*/false);
505 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER, 504 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER,
506 serialized_packet_.packet_number_length); 505 serialized_packet_.packet_number_length);
507 ASSERT_EQ(3u, serialized_packet_.packet_number); 506 ASSERT_EQ(3u, serialized_packet_.packet_number);
508 507
509 { 508 {
510 InSequence s; 509 InSequence s;
511 EXPECT_CALL(framer_visitor_, OnPacket()); 510 EXPECT_CALL(framer_visitor_, OnPacket());
512 EXPECT_CALL(framer_visitor_, OnUnauthenticatedPublicHeader(_)); 511 EXPECT_CALL(framer_visitor_, OnUnauthenticatedPublicHeader(_));
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
697 // FEC packet under construction. 696 // FEC packet under construction.
698 EXPECT_DFATAL(QuicPacketCreatorPeer::StopFecProtectingPackets(&creator_), 697 EXPECT_DFATAL(QuicPacketCreatorPeer::StopFecProtectingPackets(&creator_),
699 "Cannot stop FEC protection with open FEC group."); 698 "Cannot stop FEC protection with open FEC group.");
700 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_)); 699 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_));
701 // Confirm that FEC packet is still under construction. 700 // Confirm that FEC packet is still under construction.
702 EXPECT_TRUE(creator_.ShouldSendFec(/*force_close=*/true)); 701 EXPECT_TRUE(creator_.ShouldSendFec(/*force_close=*/true));
703 702
704 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 703 EXPECT_CALL(delegate_, OnSerializedPacket(_))
705 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket)); 704 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket));
706 // Turn off FEC protection. 705 // Turn off FEC protection.
707 creator_.set_should_fec_protect_next_packet(false);
708 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true, 706 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true,
709 /*is_fec_timeout=*/false); 707 /*is_fec_timeout=*/false);
710 EXPECT_FALSE(QuicPacketCreatorPeer::IsFecProtected(&creator_)); 708 EXPECT_FALSE(QuicPacketCreatorPeer::IsFecProtected(&creator_));
711 } 709 }
712 710
713 TEST_P(QuicPacketCreatorTest, SwitchFecOnWithStreamFrameQueued) { 711 TEST_P(QuicPacketCreatorTest, SwitchFecOnWithStreamFrameQueued) {
714 // Add a stream frame to the creator. 712 // Add a stream frame to the creator.
715 QuicFrame frame; 713 QuicFrame frame;
716 QuicIOVector io_vector(MakeIOVector("test")); 714 QuicIOVector io_vector(MakeIOVector("test"));
717 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame, 715 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame,
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
823 const size_t overhead = GetPacketHeaderOverhead(NOT_IN_FEC_GROUP) + 821 const size_t overhead = GetPacketHeaderOverhead(NOT_IN_FEC_GROUP) +
824 GetEncryptionOverhead() + 822 GetEncryptionOverhead() +
825 GetStreamFrameOverhead(NOT_IN_FEC_GROUP); 823 GetStreamFrameOverhead(NOT_IN_FEC_GROUP);
826 size_t capacity = kDefaultMaxPacketSize - overhead; 824 size_t capacity = kDefaultMaxPacketSize - overhead;
827 // Now, test various sizes around this size. 825 // Now, test various sizes around this size.
828 for (int delta = -5; delta <= 5; ++delta) { 826 for (int delta = -5; delta <= 5; ++delta) {
829 string data(capacity + delta, 'A'); 827 string data(capacity + delta, 'A');
830 size_t bytes_free = delta > 0 ? 0 : 0 - delta; 828 size_t bytes_free = delta > 0 ? 0 : 0 - delta;
831 QuicFrame frame; 829 QuicFrame frame;
832 QuicIOVector io_vector(MakeIOVector(data)); 830 QuicIOVector io_vector(MakeIOVector(data));
833 size_t bytes_consumed = QuicPacketCreatorPeer::CreateStreamFrame( 831 ASSERT_TRUE(creator_.ConsumeData(kClientDataStreamId1, io_vector, 0u,
834 &creator_, kClientDataStreamId1, io_vector, 0u, kOffset, false, &frame); 832 kOffset, false, false, &frame,
835 EXPECT_EQ(capacity - bytes_free, bytes_consumed); 833 MAY_FEC_PROTECT));
834 ASSERT_TRUE(frame.stream_frame);
836 835
837 ASSERT_TRUE(creator_.AddSavedFrame(frame));
838 // BytesFree() returns bytes available for the next frame, which will 836 // BytesFree() returns bytes available for the next frame, which will
839 // be two bytes smaller since the stream frame would need to be grown. 837 // be two bytes smaller since the stream frame would need to be grown.
840 EXPECT_EQ(2u, creator_.ExpansionOnNewFrame()); 838 EXPECT_EQ(2u, creator_.ExpansionOnNewFrame());
841 size_t expected_bytes_free = bytes_free < 3 ? 0 : bytes_free - 2; 839 size_t expected_bytes_free = bytes_free < 3 ? 0 : bytes_free - 2;
842 EXPECT_EQ(expected_bytes_free, creator_.BytesFree()) << "delta: " << delta; 840 EXPECT_EQ(expected_bytes_free, creator_.BytesFree()) << "delta: " << delta;
843 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 841 EXPECT_CALL(delegate_, OnSerializedPacket(_))
844 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket)); 842 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket));
845 creator_.Flush(); 843 creator_.Flush();
846 ASSERT_TRUE(serialized_packet_.packet); 844 ASSERT_TRUE(serialized_packet_.packet);
847 ClearSerializedPacket(&serialized_packet_); 845 ClearSerializedPacket(&serialized_packet_);
848 } 846 }
849 } 847 }
850 848
851 TEST_P(QuicPacketCreatorTest, StreamFrameConsumptionWithFec) { 849 TEST_P(QuicPacketCreatorTest, StreamFrameConsumptionWithFec) {
852 // Send FEC packet every 6 packets. 850 // Send FEC packet every 6 packets.
853 creator_.set_max_packets_per_fec_group(6); 851 creator_.set_max_packets_per_fec_group(6);
854 // Turn on FEC protection. 852 // Turn on FEC protection.
855 QuicFrame frame; 853 QuicFrame frame;
856 QuicIOVector io_vector(MakeIOVector("test")); 854 QuicIOVector io_vector(MakeIOVector("test"));
857 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame, 855 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame,
858 MUST_FEC_PROTECT)); 856 MUST_FEC_PROTECT));
859 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_)); 857 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_));
858
860 // Serialize the packet. 859 // Serialize the packet.
861 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 860 EXPECT_CALL(delegate_, OnSerializedPacket(_))
862 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket)); 861 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket));
863 creator_.Flush(); 862 creator_.Flush();
864 // Compute the total overhead for a single frame in packet. 863 // Compute the total overhead for a single frame in packet.
865 const size_t overhead = GetPacketHeaderOverhead(IN_FEC_GROUP) + 864 const size_t overhead = GetPacketHeaderOverhead(IN_FEC_GROUP) +
866 GetEncryptionOverhead() + 865 GetEncryptionOverhead() +
867 GetStreamFrameOverhead(IN_FEC_GROUP); 866 GetStreamFrameOverhead(IN_FEC_GROUP);
868 size_t capacity = kDefaultMaxPacketSize - overhead; 867 size_t capacity = kDefaultMaxPacketSize - overhead;
869 // Now, test various sizes around this size. 868 // Now, test various sizes around this size.
870 for (int delta = -5; delta <= 5; ++delta) { 869 for (int delta = -5; delta <= 5; ++delta) {
871 string data(capacity + delta, 'A'); 870 string data(capacity + delta, 'A');
872 size_t bytes_free = delta > 0 ? 0 : 0 - delta; 871 size_t bytes_free = delta > 0 ? 0 : 0 - delta;
873 QuicFrame frame; 872 QuicFrame frame;
874 QuicIOVector io_vector(MakeIOVector(data)); 873 QuicIOVector io_vector(MakeIOVector(data));
875 size_t bytes_consumed = QuicPacketCreatorPeer::CreateStreamFrame( 874 ASSERT_TRUE(creator_.ConsumeData(kClientDataStreamId1, io_vector, 0u,
876 &creator_, kClientDataStreamId1, io_vector, 0u, kOffset, false, &frame); 875 kOffset, false, false, &frame,
877 EXPECT_EQ(capacity - bytes_free, bytes_consumed); 876 MUST_FEC_PROTECT));
878 877 ASSERT_TRUE(frame.stream_frame);
879 ASSERT_TRUE(creator_.AddSavedFrame(frame));
880 // BytesFree() returns bytes available for the next frame. Since stream 878 // BytesFree() returns bytes available for the next frame. Since stream
881 // frame does not grow for FEC protected packets, this should be the same 879 // frame does not grow for FEC protected packets, this should be the same
882 // as bytes_free (bound by 0). 880 // as bytes_free (bound by 0).
883 EXPECT_EQ(0u, creator_.ExpansionOnNewFrame()); 881 EXPECT_EQ(0u, creator_.ExpansionOnNewFrame());
884 size_t expected_bytes_free = bytes_free > 0 ? bytes_free : 0; 882 size_t expected_bytes_free = bytes_free > 0 ? bytes_free : 0;
885 EXPECT_EQ(expected_bytes_free, creator_.BytesFree()) << "delta: " << delta; 883 EXPECT_EQ(expected_bytes_free, creator_.BytesFree()) << "delta: " << delta;
886 { 884 {
887 InSequence s; 885 InSequence s;
888 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 886 EXPECT_CALL(delegate_, OnSerializedPacket(_))
889 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket)); 887 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket));
(...skipping 388 matching lines...) Expand 10 before | Expand all | Expand 10 after
1278 EXPECT_TRUE(creator_.IsFecGroupOpen()); 1276 EXPECT_TRUE(creator_.IsFecGroupOpen());
1279 // We do not have enough packets in the FEC group to trigger an FEC packet. 1277 // We do not have enough packets in the FEC group to trigger an FEC packet.
1280 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/false)); 1278 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/false));
1281 // Should return true since there are packets in the FEC group. 1279 // Should return true since there are packets in the FEC group.
1282 EXPECT_TRUE(creator_.ShouldSendFec(/*force_close=*/true)); 1280 EXPECT_TRUE(creator_.ShouldSendFec(/*force_close=*/true));
1283 1281
1284 // FEC group will be reset if FEC police is alarm trigger but FEC alarm does 1282 // FEC group will be reset if FEC police is alarm trigger but FEC alarm does
1285 // not fire. 1283 // not fire.
1286 EXPECT_CALL(delegate_, OnResetFecGroup()).Times(1); 1284 EXPECT_CALL(delegate_, OnResetFecGroup()).Times(1);
1287 creator_.set_fec_send_policy(FEC_ALARM_TRIGGER); 1285 creator_.set_fec_send_policy(FEC_ALARM_TRIGGER);
1288 creator_.set_should_fec_protect_next_packet(true);
1289 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true, 1286 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true,
1290 /*is_fec_timeout=*/false); 1287 /*is_fec_timeout=*/false);
1291 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_)); 1288 EXPECT_FALSE(QuicPacketCreatorPeer::IsFecProtected(&creator_));
1292 EXPECT_FALSE(creator_.IsFecGroupOpen()); 1289 EXPECT_FALSE(creator_.IsFecGroupOpen());
1293 // We do not have enough packets in the FEC group to trigger an FEC packet. 1290 // We do not have enough packets in the FEC group to trigger an FEC packet.
1294 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/false)); 1291 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/false));
1295 // Confirm that there is no FEC packet under construction. 1292 // Confirm that there is no FEC packet under construction.
1296 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/true)); 1293 EXPECT_FALSE(creator_.ShouldSendFec(/*force_close=*/true));
1297 1294
1298 char buffer[kMaxPacketSize]; 1295 char buffer[kMaxPacketSize];
1299 EXPECT_DFATAL( 1296 EXPECT_DFATAL(
1300 QuicPacketCreatorPeer::SerializeFec(&creator_, buffer, kMaxPacketSize), 1297 QuicPacketCreatorPeer::SerializeFec(&creator_, buffer, kMaxPacketSize),
1301 "SerializeFEC called but no group or zero packets in group."); 1298 "SerializeFEC called but no group or zero packets in group.");
(...skipping 15 matching lines...) Expand all
1317 // Should return false since we do not have enough packets in the FEC group to 1314 // Should return false since we do not have enough packets in the FEC group to
1318 // trigger an FEC packet. 1315 // trigger an FEC packet.
1319 ASSERT_FALSE(creator_.ShouldSendFec(/*force_close=*/false)); 1316 ASSERT_FALSE(creator_.ShouldSendFec(/*force_close=*/false));
1320 // Should return true since there are packets in the FEC group. 1317 // Should return true since there are packets in the FEC group.
1321 ASSERT_TRUE(creator_.ShouldSendFec(/*force_close=*/true)); 1318 ASSERT_TRUE(creator_.ShouldSendFec(/*force_close=*/true));
1322 1319
1323 // Change FEC policy, send FEC packet and close FEC group. 1320 // Change FEC policy, send FEC packet and close FEC group.
1324 creator_.set_fec_send_policy(FEC_ANY_TRIGGER); 1321 creator_.set_fec_send_policy(FEC_ANY_TRIGGER);
1325 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 1322 EXPECT_CALL(delegate_, OnSerializedPacket(_))
1326 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket)); 1323 .WillOnce(Invoke(this, &QuicPacketCreatorTest::SaveSerializedPacket));
1327 creator_.set_should_fec_protect_next_packet(false);
1328 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true, 1324 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true,
1329 /*is_fec_timeout=*/false); 1325 /*is_fec_timeout=*/false);
1330 ASSERT_EQ(3u, serialized_packet_.packet_number); 1326 ASSERT_EQ(3u, serialized_packet_.packet_number);
1331 ClearSerializedPacket(&serialized_packet_); 1327 ClearSerializedPacket(&serialized_packet_);
1332 } 1328 }
1333 1329
1334 TEST_P(QuicPacketCreatorTest, ResetFecGroupWithQueuedFrames) { 1330 TEST_P(QuicPacketCreatorTest, ResetFecGroupWithQueuedFrames) {
1335 // Send FEC packet every 6 packets. 1331 // Send FEC packet every 6 packets.
1336 creator_.set_max_packets_per_fec_group(6); 1332 creator_.set_max_packets_per_fec_group(6);
1337 // Add a stream frame to the creator and turn on FEC protection. 1333 // Add a stream frame to the creator and turn on FEC protection.
(...skipping 10 matching lines...) Expand all
1348 1344
1349 EXPECT_CALL(delegate_, OnSerializedPacket(_)) 1345 EXPECT_CALL(delegate_, OnSerializedPacket(_))
1350 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket)); 1346 .WillOnce(Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket));
1351 creator_.Flush(); 1347 creator_.Flush();
1352 EXPECT_FALSE(creator_.HasPendingFrames()); 1348 EXPECT_FALSE(creator_.HasPendingFrames());
1353 1349
1354 // FEC group will be reset if FEC police is alarm trigger but FEC alarm does 1350 // FEC group will be reset if FEC police is alarm trigger but FEC alarm does
1355 // not fire. 1351 // not fire.
1356 EXPECT_CALL(delegate_, OnResetFecGroup()).Times(1); 1352 EXPECT_CALL(delegate_, OnResetFecGroup()).Times(1);
1357 creator_.set_fec_send_policy(FEC_ALARM_TRIGGER); 1353 creator_.set_fec_send_policy(FEC_ALARM_TRIGGER);
1358 creator_.set_should_fec_protect_next_packet(true);
1359 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true, 1354 creator_.MaybeSendFecPacketAndCloseGroup(/*force_send_fec=*/true,
1360 /*is_fec_timeout=*/false); 1355 /*is_fec_timeout=*/false);
1361 EXPECT_FALSE(creator_.IsFecGroupOpen()); 1356 EXPECT_FALSE(creator_.IsFecGroupOpen());
1362 } 1357 }
1363 1358
1364 TEST_P(QuicPacketCreatorTest, SetCurrentPath) { 1359 TEST_P(QuicPacketCreatorTest, SetCurrentPath) {
1365 // Current path is the default path. 1360 // Current path is the default path.
1366 EXPECT_EQ(kDefaultPathId, QuicPacketCreatorPeer::GetCurrentPath(&creator_)); 1361 EXPECT_EQ(kDefaultPathId, QuicPacketCreatorPeer::GetCurrentPath(&creator_));
1367 EXPECT_EQ(0u, creator_.packet_number()); 1362 EXPECT_EQ(0u, creator_.packet_number());
1368 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER, 1363 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER,
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
1450 .WillRepeatedly( 1445 .WillRepeatedly(
1451 Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket)); 1446 Invoke(this, &QuicPacketCreatorTest::ClearSerializedPacket));
1452 creator_.Flush(); 1447 creator_.Flush();
1453 EXPECT_FALSE(creator_.HasPendingFrames()); 1448 EXPECT_FALSE(creator_.HasPendingFrames());
1454 creator_.SetCurrentPath(kPathId1, 1, 0); 1449 creator_.SetCurrentPath(kPathId1, 1, 0);
1455 EXPECT_EQ(kPathId1, QuicPacketCreatorPeer::GetCurrentPath(&creator_)); 1450 EXPECT_EQ(kPathId1, QuicPacketCreatorPeer::GetCurrentPath(&creator_));
1456 EXPECT_FALSE(creator_.HasPendingFrames()); 1451 EXPECT_FALSE(creator_.HasPendingFrames());
1457 EXPECT_EQ(0u, creator_.packet_number()); 1452 EXPECT_EQ(0u, creator_.packet_number());
1458 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER, 1453 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER,
1459 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_)); 1454 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_));
1460 EXPECT_TRUE(QuicPacketCreatorPeer::IsFecProtected(&creator_)); 1455 EXPECT_FALSE(QuicPacketCreatorPeer::IsFecProtected(&creator_));
1461 1456
1462 // Change current path back. 1457 // Change current path back.
1463 creator_.SetCurrentPath(kDefaultPathId, 3, 2); 1458 creator_.SetCurrentPath(kDefaultPathId, 3, 2);
1464 EXPECT_EQ(kDefaultPathId, QuicPacketCreatorPeer::GetCurrentPath(&creator_)); 1459 EXPECT_EQ(kDefaultPathId, QuicPacketCreatorPeer::GetCurrentPath(&creator_));
1465 // FEC packet consumes a packet number. 1460 // FEC packet consumes a packet number.
1466 EXPECT_EQ(2u, creator_.packet_number()); 1461 EXPECT_EQ(2u, creator_.packet_number());
1467 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER, 1462 EXPECT_EQ(PACKET_1BYTE_PACKET_NUMBER,
1468 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_)); 1463 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_));
1469 // Add a stream frame to the creator. 1464 // Add a stream frame to the creator.
1470 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame, 1465 ASSERT_TRUE(creator_.ConsumeData(1u, io_vector, 0u, 0u, false, false, &frame,
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
1522 creator_.SetCurrentPath(kDefaultPathId, 2, 10000 / kDefaultMaxPacketSize); 1517 creator_.SetCurrentPath(kDefaultPathId, 2, 10000 / kDefaultMaxPacketSize);
1523 // FEC packet consumes a packet number. 1518 // FEC packet consumes a packet number.
1524 EXPECT_EQ(64 * 256 - max_packets_per_fec_group, creator_.packet_number()); 1519 EXPECT_EQ(64 * 256 - max_packets_per_fec_group, creator_.packet_number());
1525 EXPECT_EQ(PACKET_2BYTE_PACKET_NUMBER, 1520 EXPECT_EQ(PACKET_2BYTE_PACKET_NUMBER,
1526 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_)); 1521 QuicPacketCreatorPeer::NextPacketNumberLength(&creator_));
1527 } 1522 }
1528 1523
1529 } // namespace 1524 } // namespace
1530 } // namespace test 1525 } // namespace test
1531 } // namespace net 1526 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_packet_creator.cc ('k') | net/quic/quic_packet_generator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698