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

Unified Diff: net/quic/quic_packet_generator_test.cc

Issue 1811043002: Landing Recent QUIC changes until 2016-03-15 16:26 UTC (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add an export clause. Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_packet_generator.cc ('k') | net/quic/quic_received_packet_manager.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/quic_packet_generator_test.cc
diff --git a/net/quic/quic_packet_generator_test.cc b/net/quic/quic_packet_generator_test.cc
index 133dad576da261f920b825dc9298553100629feb..742e2629bb1552d631d2589cec69d7ec6b9886d1 100644
--- a/net/quic/quic_packet_generator_test.cc
+++ b/net/quic/quic_packet_generator_test.cc
@@ -43,6 +43,7 @@ class MockDelegate : public QuicPacketGenerator::DelegateInterface {
bool(HasRetransmittableData retransmittable,
IsHandshake handshake));
MOCK_METHOD1(PopulateAckFrame, void(QuicAckFrame*));
+ MOCK_METHOD0(GetUpdatedAckFrame, const QuicFrame());
MOCK_METHOD1(PopulateStopWaitingFrame, void(QuicStopWaitingFrame*));
MOCK_METHOD1(OnSerializedPacket, void(SerializedPacket* packet));
MOCK_METHOD2(OnUnrecoverableError,
@@ -213,6 +214,7 @@ class QuicPacketGeneratorTest : public ::testing::Test {
QuicPacketCreator* creator_;
SimpleQuicFramer simple_framer_;
vector<SerializedPacket> packets_;
+ QuicAckFrame ack_frame_;
private:
scoped_ptr<char[]> data_array_;
@@ -238,7 +240,12 @@ TEST_F(QuicPacketGeneratorTest, ShouldSendAck_WritableAndShouldNotFlush) {
delegate_.SetCanWriteOnlyNonRetransmittable();
generator_.StartBatchOperations();
- EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ }
EXPECT_CALL(debug_delegate, OnFrameAddedToPacket(_)).Times(1);
generator_.SetShouldSendAck(false);
@@ -248,7 +255,12 @@ TEST_F(QuicPacketGeneratorTest, ShouldSendAck_WritableAndShouldNotFlush) {
TEST_F(QuicPacketGeneratorTest, ShouldSendAck_WritableAndShouldFlush) {
delegate_.SetCanWriteOnlyNonRetransmittable();
- EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ }
EXPECT_CALL(delegate_, OnSerializedPacket(_))
.WillOnce(Invoke(this, &QuicPacketGeneratorTest::SavePacket));
@@ -268,7 +280,12 @@ TEST_F(QuicPacketGeneratorTest, ShouldSendAck_MultipleCalls) {
delegate_.SetCanWriteAnything();
// Only one AckFrame should be created.
- EXPECT_CALL(delegate_, PopulateAckFrame(_)).Times(1);
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_)).Times(1);
+ }
EXPECT_CALL(delegate_, OnSerializedPacket(_))
.Times(1)
.WillOnce(Invoke(this, &QuicPacketGeneratorTest::SavePacket));
@@ -496,7 +513,12 @@ TEST_F(QuicPacketGeneratorTest, NotWritableThenBatchOperations) {
generator_.StartBatchOperations();
// When the first write operation is invoked, the ack frame will be returned.
- EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ }
// Send some data and a control frame
generator_.ConsumeData(3, MakeIOVector("quux"), 7, false, nullptr);
@@ -528,7 +550,12 @@ TEST_F(QuicPacketGeneratorTest, NotWritableThenBatchOperations2) {
generator_.StartBatchOperations();
// When the first write operation is invoked, the ack frame will be returned.
- EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ }
{
InSequence dummy;
@@ -817,7 +844,12 @@ TEST_F(QuicPacketGeneratorTest, DontCrashOnInvalidStopWaiting) {
generator_.StartBatchOperations();
// Set up frames to write into the creator when control frames are written.
- EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ if (FLAGS_quic_dont_copy_acks) {
+ EXPECT_CALL(delegate_, GetUpdatedAckFrame())
+ .WillOnce(Return(QuicFrame(&ack_frame_)));
+ } else {
+ EXPECT_CALL(delegate_, PopulateAckFrame(_));
+ }
EXPECT_CALL(delegate_, PopulateStopWaitingFrame(_));
// Generator should have queued control frames, and creator should be empty.
EXPECT_TRUE(generator_.HasQueuedFrames());
« no previous file with comments | « net/quic/quic_packet_generator.cc ('k') | net/quic/quic_received_packet_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698