Index: net/quic/reliable_quic_stream_test.cc |
diff --git a/net/quic/reliable_quic_stream_test.cc b/net/quic/reliable_quic_stream_test.cc |
index 4d71ca2556adbc8a104f6824730a9450340d6581..1153c3593e278014f0447f11cb8a2820fe13bf87 100644 |
--- a/net/quic/reliable_quic_stream_test.cc |
+++ b/net/quic/reliable_quic_stream_test.cc |
@@ -43,9 +43,7 @@ const bool kShouldProcessData = true; |
class TestStream : public ReliableQuicStream { |
public: |
- TestStream(QuicStreamId id, |
- QuicSession* session, |
- bool should_process_data) |
+ TestStream(QuicStreamId id, QuicSession* session, bool should_process_data) |
: ReliableQuicStream(id, session), |
should_process_data_(should_process_data) {} |
@@ -119,10 +117,10 @@ class ReliableQuicStreamTest : public ::testing::TestWithParam<bool> { |
QuicConfigPeer::SetReceivedInitialFlowControlWindow( |
session_->config(), initial_flow_control_window_bytes_); |
- stream_.reset(new TestStream(kStreamId, session_.get(), |
- stream_should_process_data)); |
- stream2_.reset(new TestStream(kStreamId + 2, session_.get(), |
- stream_should_process_data)); |
+ stream_.reset( |
+ new TestStream(kStreamId, session_.get(), stream_should_process_data)); |
+ stream2_.reset(new TestStream( |
+ kStreamId + 2, session_.get(), stream_should_process_data)); |
write_blocked_list_ = |
QuicSessionPeer::GetWriteblockedStreams(session_.get()); |
} |
@@ -150,11 +148,14 @@ TEST_F(ReliableQuicStreamTest, WriteAllData) { |
Initialize(kShouldProcessData); |
connection_->options()->max_packet_length = |
- 1 + QuicPacketCreator::StreamFramePacketOverhead( |
- connection_->version(), PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, |
- PACKET_6BYTE_SEQUENCE_NUMBER, NOT_IN_FEC_GROUP); |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(kDataLen, true))); |
+ 1 + |
+ QuicPacketCreator::StreamFramePacketOverhead(connection_->version(), |
+ PACKET_8BYTE_CONNECTION_ID, |
+ !kIncludeVersion, |
+ PACKET_6BYTE_SEQUENCE_NUMBER, |
+ NOT_IN_FEC_GROUP); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(kDataLen, true))); |
stream_->WriteOrBufferData(kData1, false, NULL); |
EXPECT_FALSE(write_blocked_list_->HasWriteBlockedStreams()); |
} |
@@ -173,13 +174,12 @@ TEST_F(ReliableQuicStreamTest, BlockIfOnlySomeDataConsumed) { |
// Write some data and no fin. If we consume some but not all of the data, |
// we should be write blocked a not all the data was consumed. |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(1, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(1, false))); |
stream_->WriteOrBufferData(StringPiece(kData1, 2), false, NULL); |
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); |
} |
- |
TEST_F(ReliableQuicStreamTest, BlockIfFinNotConsumedWithData) { |
Initialize(kShouldProcessData); |
@@ -187,8 +187,8 @@ TEST_F(ReliableQuicStreamTest, BlockIfFinNotConsumedWithData) { |
// we should be write blocked because the fin was not consumed. |
// (This should never actually happen as the fin should be sent out with the |
// last data) |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(2, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(2, false))); |
stream_->WriteOrBufferData(StringPiece(kData1, 2), true, NULL); |
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); |
} |
@@ -198,8 +198,8 @@ TEST_F(ReliableQuicStreamTest, BlockIfSoloFinNotConsumed) { |
// Write no data and a fin. If we consume nothing we should be write blocked, |
// as the fin was not consumed. |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(0, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(0, false))); |
stream_->WriteOrBufferData(StringPiece(), true, NULL); |
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); |
} |
@@ -209,11 +209,14 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferData) { |
EXPECT_FALSE(write_blocked_list_->HasWriteBlockedStreams()); |
connection_->options()->max_packet_length = |
- 1 + QuicPacketCreator::StreamFramePacketOverhead( |
- connection_->version(), PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, |
- PACKET_6BYTE_SEQUENCE_NUMBER, NOT_IN_FEC_GROUP); |
- EXPECT_CALL(*session_, WritevData(_, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(kDataLen - 1, false))); |
+ 1 + |
+ QuicPacketCreator::StreamFramePacketOverhead(connection_->version(), |
+ PACKET_8BYTE_CONNECTION_ID, |
+ !kIncludeVersion, |
+ PACKET_6BYTE_SEQUENCE_NUMBER, |
+ NOT_IN_FEC_GROUP); |
+ EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(kDataLen - 1, false))); |
stream_->WriteOrBufferData(kData1, false, NULL); |
EXPECT_TRUE(write_blocked_list_->HasWriteBlockedStreams()); |
@@ -222,15 +225,15 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferData) { |
// Make sure we get the tail of the first write followed by the bytes_consumed |
InSequence s; |
- EXPECT_CALL(*session_, WritevData(_, _, _, _, _)). |
- WillOnce(Return(QuicConsumedData(1, false))); |
- EXPECT_CALL(*session_, WritevData(_, _, _, _, _)). |
- WillOnce(Return(QuicConsumedData(kDataLen - 2, false))); |
+ EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(1, false))); |
+ EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(kDataLen - 2, false))); |
stream_->OnCanWrite(); |
// And finally the end of the bytes_consumed. |
- EXPECT_CALL(*session_, WritevData(_, _, _, _, _)). |
- WillOnce(Return(QuicConsumedData(2, true))); |
+ EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(2, true))); |
stream_->OnCanWrite(); |
} |
@@ -256,8 +259,8 @@ TEST_F(ReliableQuicStreamTest, RstAlwaysSentIfNoFinSent) { |
EXPECT_FALSE(rst_sent()); |
// Write some data, with no FIN. |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(1, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(1, false))); |
stream_->WriteOrBufferData(StringPiece(kData1, 1), false, NULL); |
EXPECT_FALSE(fin_sent()); |
EXPECT_FALSE(rst_sent()); |
@@ -279,8 +282,8 @@ TEST_F(ReliableQuicStreamTest, RstNotSentIfFinSent) { |
EXPECT_FALSE(rst_sent()); |
// Write some data, with FIN. |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(1, true))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(1, true))); |
stream_->WriteOrBufferData(StringPiece(kData1, 1), true, NULL); |
EXPECT_TRUE(fin_sent()); |
EXPECT_FALSE(rst_sent()); |
@@ -397,27 +400,24 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferDataWithQuicAckNotifier) { |
scoped_refptr<QuicAckNotifier::DelegateInterface> proxy_delegate; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kFirstWriteSize, false)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kFirstWriteSize, false)))); |
stream_->WriteOrBufferData(kData, false, delegate.get()); |
EXPECT_TRUE(write_blocked_list_->HasWriteBlockedStreams()); |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())). |
- WillOnce( |
- Return(QuicConsumedData(kSecondWriteSize, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())) |
+ .WillOnce(Return(QuicConsumedData(kSecondWriteSize, false))); |
stream_->OnCanWrite(); |
// No ack expected for an empty write. |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())). |
- WillOnce( |
- Return(QuicConsumedData(0, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())) |
+ .WillOnce(Return(QuicConsumedData(0, false))); |
stream_->OnCanWrite(); |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())). |
- WillOnce( |
- Return(QuicConsumedData(kLastWriteSize, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())) |
+ .WillOnce(Return(QuicConsumedData(kLastWriteSize, false))); |
stream_->OnCanWrite(); |
// There were two writes, so OnAckNotification is not propagated |
@@ -449,10 +449,10 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferDataAckNotificationBeforeFlush) { |
scoped_refptr<QuicAckNotifier::DelegateInterface> proxy_delegate; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kInitialWriteSize, false)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kInitialWriteSize, false)))); |
stream_->WriteOrBufferData(kData, false, delegate.get()); |
EXPECT_TRUE(write_blocked_list_->HasWriteBlockedStreams()); |
@@ -460,10 +460,10 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferDataAckNotificationBeforeFlush) { |
proxy_delegate->OnAckNotification(1, 2, 3, 4, zero_); |
proxy_delegate = NULL; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kDataSize - kInitialWriteSize, false)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
+ DoAll(WithArgs<4>(Invoke( |
+ CreateFunctor(&SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kDataSize - kInitialWriteSize, false)))); |
stream_->OnCanWrite(); |
// Handle the ack for the second write. |
@@ -480,10 +480,10 @@ TEST_F(ReliableQuicStreamTest, WriteAndBufferDataWithAckNotiferNoBuffer) { |
scoped_refptr<QuicAckNotifier::DelegateInterface> proxy_delegate; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kDataLen, true)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kDataLen, true)))); |
stream_->WriteOrBufferData(kData1, true, delegate.get()); |
EXPECT_FALSE(write_blocked_list_->HasWriteBlockedStreams()); |
@@ -501,15 +501,15 @@ TEST_F(ReliableQuicStreamTest, BufferOnWriteAndBufferDataWithAckNotifer) { |
scoped_refptr<QuicAckNotifier::DelegateInterface> proxy_delegate; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce( |
- Return(QuicConsumedData(0, false))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(Return(QuicConsumedData(0, false))); |
stream_->WriteOrBufferData(kData1, true, delegate.get()); |
EXPECT_TRUE(write_blocked_list_->HasWriteBlockedStreams()); |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kDataLen, true)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kDataLen, true)))); |
stream_->OnCanWrite(); |
// Handle the ack. |
@@ -527,17 +527,17 @@ TEST_F(ReliableQuicStreamTest, WriteAndBufferDataWithAckNotiferOnlyFinRemains) { |
scoped_refptr<QuicAckNotifier::DelegateInterface> proxy_delegate; |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(kDataLen, false)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(kDataLen, false)))); |
stream_->WriteOrBufferData(kData1, true, delegate.get()); |
EXPECT_TRUE(write_blocked_list_->HasWriteBlockedStreams()); |
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll( |
- WithArgs<4>(Invoke(CreateFunctor( |
- &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
- Return(QuicConsumedData(0, true)))); |
+ EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)) |
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor( |
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))), |
+ Return(QuicConsumedData(0, true)))); |
stream_->OnCanWrite(); |
// Handle the acks. |