summaryrefslogtreecommitdiffstats
path: root/net/quic/reliable_quic_stream_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'net/quic/reliable_quic_stream_test.cc')
-rw-r--r--net/quic/reliable_quic_stream_test.cc112
1 files changed, 54 insertions, 58 deletions
diff --git a/net/quic/reliable_quic_stream_test.cc b/net/quic/reliable_quic_stream_test.cc
index 48e8616..935554f 100644
--- a/net/quic/reliable_quic_stream_test.cc
+++ b/net/quic/reliable_quic_stream_test.cc
@@ -37,7 +37,6 @@ namespace {
const char kData1[] = "FooAndBar";
const char kData2[] = "EepAndBaz";
const size_t kDataLen = 9;
-const QuicStreamId kStreamId = 3;
const bool kIsServer = true;
const bool kShouldProcessData = true;
@@ -119,9 +118,7 @@ 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_.reset(new TestStream(kHeadersStreamId, session_.get(),
stream_should_process_data));
write_blocked_list_ =
QuicSessionPeer::GetWriteblockedStreams(session_.get());
@@ -143,7 +140,6 @@ class ReliableQuicStreamTest : public ::testing::TestWithParam<bool> {
MockConnection* connection_;
scoped_ptr<MockSession> session_;
scoped_ptr<TestStream> stream_;
- scoped_ptr<TestStream> stream2_;
SpdyHeaderBlock headers_;
QuicWriteBlockedList* write_blocked_list_;
uint32 initial_flow_control_window_bytes_;
@@ -156,10 +152,10 @@ TEST_F(ReliableQuicStreamTest, WriteAllData) {
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)));
+ connection_->version(), PACKET_8BYTE_CONNECTION_ID,
+ !kIncludeVersion, PACKET_6BYTE_SEQUENCE_NUMBER, NOT_IN_FEC_GROUP);
+ EXPECT_CALL(*session_, WritevData(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(kDataLen, true)));
stream_->WriteOrBufferData(kData1, false, NULL);
EXPECT_FALSE(HasWriteBlockedStreams());
}
@@ -178,8 +174,8 @@ 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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(1, false)));
stream_->WriteOrBufferData(StringPiece(kData1, 2), false, NULL);
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams());
}
@@ -191,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(2, false)));
stream_->WriteOrBufferData(StringPiece(kData1, 2), true, NULL);
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams());
}
@@ -202,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(0, false)));
stream_->WriteOrBufferData(StringPiece(), true, NULL);
ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams());
}
@@ -260,8 +256,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(1, false)));
stream_->WriteOrBufferData(StringPiece(kData1, 1), false, NULL);
EXPECT_FALSE(fin_sent());
EXPECT_FALSE(rst_sent());
@@ -283,8 +279,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(1, true)));
stream_->WriteOrBufferData(StringPiece(kData1, 1), true, NULL);
EXPECT_TRUE(fin_sent());
EXPECT_FALSE(rst_sent());
@@ -404,27 +400,27 @@ 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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kFirstWriteSize, false))));
stream_->WriteOrBufferData(kData, false, delegate.get());
EXPECT_TRUE(HasWriteBlockedStreams());
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, proxy_delegate.get())).
- WillOnce(
- Return(QuicConsumedData(kSecondWriteSize, false)));
+ EXPECT_CALL(*session_,
+ WritevData(kHeadersStreamId, _, _, _, 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(kHeadersStreamId, _, _, _, 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(kHeadersStreamId, _, _, _, proxy_delegate.get()))
+ .WillOnce(Return(QuicConsumedData(kLastWriteSize, false)));
stream_->OnCanWrite();
// There were two writes, so OnAckNotification is not propagated
@@ -459,10 +455,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kInitialWriteSize, false))));
stream_->WriteOrBufferData(kData, false, delegate.get());
EXPECT_TRUE(HasWriteBlockedStreams());
@@ -470,10 +466,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(kHeadersStreamId, _, _, _, _)).WillOnce(
+ DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kDataSize - kInitialWriteSize, false))));
stream_->OnCanWrite();
// Handle the ack for the second write.
@@ -490,10 +486,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kDataLen, true))));
stream_->WriteOrBufferData(kData1, true, delegate.get());
EXPECT_FALSE(HasWriteBlockedStreams());
@@ -511,15 +507,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(Return(QuicConsumedData(0, false)));
stream_->WriteOrBufferData(kData1, true, delegate.get());
EXPECT_TRUE(HasWriteBlockedStreams());
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll(
- WithArgs<4>(Invoke(CreateFunctor(
- &SaveProxyAckNotifierDelegate, &proxy_delegate))),
- Return(QuicConsumedData(kDataLen, true))));
+ EXPECT_CALL(*session_, WritevData(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kDataLen, true))));
stream_->OnCanWrite();
// Handle the ack.
@@ -537,17 +533,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(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(kDataLen, false))));
stream_->WriteOrBufferData(kData1, true, delegate.get());
EXPECT_TRUE(HasWriteBlockedStreams());
- EXPECT_CALL(*session_, WritevData(kStreamId, _, _, _, _)).WillOnce(DoAll(
- WithArgs<4>(Invoke(CreateFunctor(
- &SaveProxyAckNotifierDelegate, &proxy_delegate))),
- Return(QuicConsumedData(0, true))));
+ EXPECT_CALL(*session_, WritevData(kHeadersStreamId, _, _, _, _))
+ .WillOnce(DoAll(WithArgs<4>(Invoke(CreateFunctor(
+ &SaveProxyAckNotifierDelegate, &proxy_delegate))),
+ Return(QuicConsumedData(0, true))));
stream_->OnCanWrite();
// Handle the acks.