diff options
| author | rjshade <rjshade@chromium.org> | 2016-03-11 12:42:17 -0800 |
|---|---|---|
| committer | Commit bot <commit-bot@chromium.org> | 2016-03-11 20:43:47 +0000 |
| commit | d069aaee0b3affb6004d8cf3a276c32e248a2a3d (patch) | |
| tree | ce0e89ab98a7ca09ac5df43122928a1f5aebf44b /net/quic/reliable_quic_stream_test.cc | |
| parent | ab26b6681dde41b4141fef09decf9c4e930aee85 (diff) | |
| download | chromium_src-d069aaee0b3affb6004d8cf3a276c32e248a2a3d.zip chromium_src-d069aaee0b3affb6004d8cf3a276c32e248a2a3d.tar.gz chromium_src-d069aaee0b3affb6004d8cf3a276c32e248a2a3d.tar.bz2 | |
Landing Recent QUIC changes until 2016-03-07 19:39 UTC
Up to, and including internal change 116570346
Add a new QUIC Ack Decimation mode that is reordering tolerant. Protected by FLAG_quic_ack_decimation2.
Merge internal change: 115853846
https://codereview.chromium.org/1777293002/
Deprecating FLAG_quic_batch_writes
Merge internal change: 115880164
https://codereview.chromium.org/1780913002/
Deprecate FLAG_quic_validate_stk_without_scid
Merge internal change: 115885351
https://codereview.chromium.org/1780923002/
Deprecate FLAG_quic_use_new_tcp_sender
Merge internal change: 115890504
https://codereview.chromium.org/1785663003/
Deprecate FLAG_quic_use_new_idle_timeout
Merge internal change: 115904466
https://codereview.chromium.org/1785693003/
Deprecate FLAG_quic_block_unencrypted_writes
Merge internal change: 115909446
https://codereview.chromium.org/1784643006/
Clang formatting net/quic.
Merge internal change: 115992556
https://codereview.chromium.org/1780783003/
Optionally defer responding to a QUIC ACK until all ACK processing has completed for an EpollServer iteration. Guarded by FLAG_quic_connection_defer_ack_response
Merge internal change: 114770052
https://codereview.chromium.org/1782053003/
Deprecate FLAG_require_strike_register_or_server_nonce
Merge internal change: 115891009
https://codereview.chromium.org/1785613005/
Add a boolean use_stateless_rejects_if_peer_supported argument to the QuicCryptoServerStream constructor instead of consulting FLAG_enable_quic_stateless_reject_support directly. No behavior change expected.
Merge internal change: 115844136
https://codereview.chromium.org/1783713003/
Remove FEC from send path.
Merge internal change: 115997404
https://codereview.chromium.org/1784903003/
Remove FEC code from receive path.
Drop received FEC packet.
Merge internal change: 116134765
https://codereview.chromium.org/1782143003/
Only cancel QUIC alarms if they have been set. Protected behind FLAG_quic_only_cancel_set_alarms
Merge internal change: 116142833
https://codereview.chromium.org/1781073002/
Call QuicAlarm::IsSet instead of looking at deadline_ directly, rename some variables for readability.
Merge internal change: 116146641
https://codereview.chromium.org/1778243005/
Add whether QUIC's unencrypted stream data was received or about to be sent in the error log. Logging only change.
Merge internal change: 116152506
https://codereview.chromium.org/1782193002/
Temporarily store the raw QUIC packet in QuicConnection.
Merge internal change: 116180343
https://codereview.chromium.org/1779313002/
Deprecate FLAG_quic_no_unencrypted_fec.
Merge internal change: 116244697
https://codereview.chromium.org/1780573006/
Make ShouldCreateOutgoingDynamicStream a virtual method.
Merge internal change: 116249386
https://codereview.chromium.org/1784933003/
Correctly handle EINTR during sendmsg in QuicSocketUtils::WritePacket.
Merge internal change: 116261116
https://codereview.chromium.org/1780323002/
Simplify QUIC's encryption path now that FEC is gone. Protected by FLAG_quic_inplace_encryption.
Merge internal change: 116266391
https://codereview.chromium.org/1785513003/
Remove the force param from QuicPacketGenerator::SetMaxPacketLength because path MTU packets should not be sent if the MTU cannot be changed. Not flag protected.
Merge internal change: 116273065
https://codereview.chromium.org/1781043004/
Remove lastest_revived_packet from QuicAckFrame since FEC is gone. No functional change expected.
Wire format is not changed yet.
Merge internal change: 116411121
https://codereview.chromium.org/1787443002/
Remove is_fec_packet from TransmissionInfo and SerializedPacket. No functional change.
Merge internal change: 116555910
https://codereview.chromium.org/1785853002/
Remove FEC related connection options and update FEC related comment in code base.
Merge internal change: 116566297
https://codereview.chromium.org/1785863002/
Switch "const StringPiece&" to just "StringPiece" in QUIC code. No functional change. Not flag protected.
Merge internal change: 116570346
https://codereview.chromium.org/1787453002/
Add a QuicCompressedCertsCache instance to QuicDispatcher, plumbing to QuicServerSessionBase but not used. No behavior change.
Merge internal change: 116277134
https://codereview.chromium.org/1783783003/
Add more detailed logging to QUIC's ack validation. No functional change.
Merge internal change: 116277228
https://codereview.chromium.org/1784963002/
Remove max_packet_length from QuicPacketGenerator, because it is no longer necessary with FEC gone. Not flag protected.
Merge internal change: 116387934
https://codereview.chromium.org/1777423002/
Add QuicCompressedCertsCache* to QuicCrytoServerStream plumbed from QuicServerSessionBase. No behavior change.
Merge internal change: 116388439
https://codereview.chromium.org/1782743005/
Remove unused return value from QuicAlarm::Delegate::OnAlarm. No behavior change, not protected.
The only place in the codebase that returns something other than
QuicTime::Zero() is the DelayAlarm in PacketDroppingTestWriter. I've the
implementation of OnAlarm in there to set the alarm directly to the new
time, rather than relying on the return value.
Merge internal change: 116389752
https://codereview.chromium.org/1779883005/
Add a QUIC ScopedPacketBundler to send an ack when the ack alarm goes off. No functional change. Not flag protected.
Merge internal change: 116391846
https://codereview.chromium.org/1786493003/
OnStreamEnd is now called instead of the sentinel call of OnStreamFrameData(stream_id, nullptr, 0, true). Protected by the flag FLAGS_spdy_on_stream_end.
Merge internal change: 116272960
https://codereview.chromium.org/1777163003/
R=rch@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1781123002
Cr-Commit-Position: refs/heads/master@{#380718}
Diffstat (limited to 'net/quic/reliable_quic_stream_test.cc')
| -rw-r--r-- | net/quic/reliable_quic_stream_test.cc | 167 |
1 files changed, 38 insertions, 129 deletions
diff --git a/net/quic/reliable_quic_stream_test.cc b/net/quic/reliable_quic_stream_test.cc index b006895..8de1863 100644 --- a/net/quic/reliable_quic_stream_test.cc +++ b/net/quic/reliable_quic_stream_test.cc @@ -141,7 +141,6 @@ class ReliableQuicStreamTest : public ::testing::TestWithParam<bool> { QuicIOVector /*iov*/, QuicStreamOffset /*offset*/, bool /*fin*/, - FecProtection /*fec_protection*/, QuicAckListenerInterface* /*ack_notifier_delegate*/) { session_->CloseStream(id); return QuicConsumedData(1, false); @@ -163,13 +162,12 @@ class ReliableQuicStreamTest : public ::testing::TestWithParam<bool> { TEST_F(ReliableQuicStreamTest, WriteAllData) { Initialize(kShouldProcessData); - size_t length = - 1 + QuicPacketCreator::StreamFramePacketOverhead( - PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId, - PACKET_6BYTE_PACKET_NUMBER, 0u, NOT_IN_FEC_GROUP); + size_t length = 1 + QuicPacketCreator::StreamFramePacketOverhead( + PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, + !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER, 0u); connection_->SetMaxPacketLength(length); - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(kDataLen, true))); stream_->WriteOrBufferData(kData1, false, nullptr); EXPECT_FALSE(HasWriteBlockedStreams()); @@ -189,7 +187,7 @@ 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(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(1, false))); stream_->WriteOrBufferData(StringPiece(kData1, 2), false, nullptr); ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); @@ -203,7 +201,7 @@ 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(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(2, false))); stream_->WriteOrBufferData(StringPiece(kData1, 2), true, nullptr); ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); @@ -214,7 +212,7 @@ 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(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(0, false))); stream_->WriteOrBufferData(StringPiece(), true, nullptr); ASSERT_EQ(1u, write_blocked_list_->NumBlockedStreams()); @@ -226,7 +224,7 @@ TEST_F(ReliableQuicStreamTest, CloseOnPartialWrite) { // Write some data and no fin. However, while writing the data // close the stream and verify that MarkConnectionLevelWriteBlocked does not // crash with an unknown stream. - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Invoke(this, &ReliableQuicStreamTest::CloseStreamOnWriteError)); stream_->WriteOrBufferData(StringPiece(kData1, 2), false, nullptr); ASSERT_EQ(0u, write_blocked_list_->NumBlockedStreams()); @@ -236,13 +234,12 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferData) { Initialize(kShouldProcessData); EXPECT_FALSE(HasWriteBlockedStreams()); - size_t length = - 1 + QuicPacketCreator::StreamFramePacketOverhead( - PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId, - PACKET_6BYTE_PACKET_NUMBER, 0u, NOT_IN_FEC_GROUP); + size_t length = 1 + QuicPacketCreator::StreamFramePacketOverhead( + PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, + !kIncludePathId, PACKET_6BYTE_PACKET_NUMBER, 0u); connection_->SetMaxPacketLength(length); - EXPECT_CALL(*session_, WritevData(_, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) .WillOnce(Return(QuicConsumedData(kDataLen - 1, false))); stream_->WriteOrBufferData(kData1, false, nullptr); EXPECT_TRUE(HasWriteBlockedStreams()); @@ -252,86 +249,14 @@ 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(_, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) .WillOnce(Return(QuicConsumedData(1, false))); - EXPECT_CALL(*session_, WritevData(_, _, _, _, _, _)) + 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))); - stream_->OnCanWrite(); -} - -TEST_F(ReliableQuicStreamTest, WriteOrBufferDataWithFecProtectAlways) { - Initialize(kShouldProcessData); - - // Set FEC policy on stream. - ReliableQuicStreamPeer::SetFecPolicy(stream_, FEC_PROTECT_ALWAYS); - - EXPECT_FALSE(HasWriteBlockedStreams()); - size_t length = - 1 + QuicPacketCreator::StreamFramePacketOverhead( - PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId, - PACKET_6BYTE_PACKET_NUMBER, 0u, IN_FEC_GROUP); - connection_->SetMaxPacketLength(length); - - // Write first data onto stream, which will cause one session write. - EXPECT_CALL(*session_, WritevData(_, _, _, _, MUST_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(kDataLen - 1, false))); - stream_->WriteOrBufferData(kData1, false, nullptr); - EXPECT_TRUE(HasWriteBlockedStreams()); - - // Queue a bytes_consumed write. - stream_->WriteOrBufferData(kData2, false, nullptr); - - // Make sure we get the tail of the first write followed by the bytes_consumed - InSequence s; - EXPECT_CALL(*session_, WritevData(_, _, _, _, MUST_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(1, false))); - EXPECT_CALL(*session_, WritevData(_, _, _, _, MUST_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(kDataLen - 2, false))); - stream_->OnCanWrite(); - - // And finally the end of the bytes_consumed. - EXPECT_CALL(*session_, WritevData(_, _, _, _, MUST_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(2, true))); - stream_->OnCanWrite(); -} - -TEST_F(ReliableQuicStreamTest, WriteOrBufferDataWithFecProtectOptional) { - Initialize(kShouldProcessData); - - // Set FEC policy on stream. - ReliableQuicStreamPeer::SetFecPolicy(stream_, FEC_PROTECT_OPTIONAL); - - EXPECT_FALSE(HasWriteBlockedStreams()); - size_t length = - 1 + QuicPacketCreator::StreamFramePacketOverhead( - PACKET_8BYTE_CONNECTION_ID, !kIncludeVersion, !kIncludePathId, - PACKET_6BYTE_PACKET_NUMBER, 0u, NOT_IN_FEC_GROUP); - connection_->SetMaxPacketLength(length); - - // Write first data onto stream, which will cause one session write. - EXPECT_CALL(*session_, WritevData(_, _, _, _, MAY_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(kDataLen - 1, false))); - stream_->WriteOrBufferData(kData1, false, nullptr); - EXPECT_TRUE(HasWriteBlockedStreams()); - - // Queue a bytes_consumed write. - stream_->WriteOrBufferData(kData2, false, nullptr); - - // Make sure we get the tail of the first write followed by the bytes_consumed - InSequence s; - EXPECT_CALL(*session_, WritevData(_, _, _, _, MAY_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(1, false))); - EXPECT_CALL(*session_, WritevData(_, _, _, _, MAY_FEC_PROTECT, _)) - .WillOnce(Return(QuicConsumedData(kDataLen - 2, false))); - stream_->OnCanWrite(); - - // And finally the end of the bytes_consumed. - EXPECT_CALL(*session_, WritevData(_, _, _, _, MAY_FEC_PROTECT, _)) + EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) .WillOnce(Return(QuicConsumedData(2, true))); stream_->OnCanWrite(); } @@ -359,7 +284,7 @@ TEST_F(ReliableQuicStreamTest, RstAlwaysSentIfNoFinSent) { EXPECT_FALSE(rst_sent()); // Write some data, with no FIN. - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(1, false))); stream_->WriteOrBufferData(StringPiece(kData1, 1), false, nullptr); EXPECT_FALSE(fin_sent()); @@ -382,7 +307,7 @@ TEST_F(ReliableQuicStreamTest, RstNotSentIfFinSent) { EXPECT_FALSE(rst_sent()); // Write some data, with FIN. - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(1, true))); stream_->WriteOrBufferData(StringPiece(kData1, 1), true, nullptr); EXPECT_TRUE(fin_sent()); @@ -476,26 +401,23 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferDataWithQuicAckNotifier) { scoped_refptr<QuicAckListenerInterface> ack_listener; - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &ack_listener))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &ack_listener))), Return(QuicConsumedData(kFirstWriteSize, false)))); stream_->WriteOrBufferData(kData, false, delegate.get()); EXPECT_TRUE(HasWriteBlockedStreams()); - EXPECT_CALL(*session_, - WritevData(kTestStreamId, _, _, _, _, ack_listener.get())) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, ack_listener.get())) .WillOnce(Return(QuicConsumedData(kSecondWriteSize, false))); stream_->OnCanWrite(); // No ack expected for an empty write. - EXPECT_CALL(*session_, - WritevData(kTestStreamId, _, _, _, _, ack_listener.get())) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, ack_listener.get())) .WillOnce(Return(QuicConsumedData(0, false))); stream_->OnCanWrite(); - EXPECT_CALL(*session_, - WritevData(kTestStreamId, _, _, _, _, ack_listener.get())) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, ack_listener.get())) .WillOnce(Return(QuicConsumedData(kLastWriteSize, false))); stream_->OnCanWrite(); } @@ -518,16 +440,16 @@ TEST_F(ReliableQuicStreamTest, WriteOrBufferDataAckNotificationBeforeFlush) { scoped_refptr<QuicAckListenerInterface> proxy_delegate; - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(kInitialWriteSize, false)))); stream_->WriteOrBufferData(kData, false, ack_listener.get()); EXPECT_TRUE(HasWriteBlockedStreams()); - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(kDataSize - kInitialWriteSize, false)))); stream_->OnCanWrite(); } @@ -540,9 +462,9 @@ TEST_F(ReliableQuicStreamTest, WriteAndBufferDataWithAckNotiferNoBuffer) { scoped_refptr<QuicAckListenerInterface> proxy_delegate; - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(kDataLen, true)))); stream_->WriteOrBufferData(kData1, true, delegate.get()); EXPECT_FALSE(HasWriteBlockedStreams()); @@ -556,14 +478,14 @@ TEST_F(ReliableQuicStreamTest, BufferOnWriteAndBufferDataWithAckNotifer) { scoped_refptr<QuicAckListenerInterface> proxy_delegate; - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(0, false))); stream_->WriteOrBufferData(kData1, true, delegate.get()); EXPECT_TRUE(HasWriteBlockedStreams()); - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(kDataLen, true)))); stream_->OnCanWrite(); } @@ -577,16 +499,16 @@ TEST_F(ReliableQuicStreamTest, WriteAndBufferDataWithAckNotiferOnlyFinRemains) { scoped_refptr<QuicAckListenerInterface> proxy_delegate; - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(kDataLen, false)))); stream_->WriteOrBufferData(kData1, true, delegate.get()); EXPECT_TRUE(HasWriteBlockedStreams()); - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(DoAll( - WithArgs<5>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), + WithArgs<4>(Invoke(CreateFunctor(SaveAckListener, &proxy_delegate))), Return(QuicConsumedData(0, true)))); stream_->OnCanWrite(); } @@ -678,7 +600,7 @@ TEST_F(ReliableQuicStreamTest, SetDrainingIncomingOutgoing) { EXPECT_EQ(1u, session_->GetNumOpenIncomingStreams()); // Outgoing data with FIN. - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(2, true))); stream_->WriteOrBufferData(StringPiece(kData1, 2), true, nullptr); EXPECT_TRUE(stream_->write_side_closed()); @@ -693,7 +615,7 @@ TEST_F(ReliableQuicStreamTest, SetDrainingOutgoingIncoming) { Initialize(kShouldNotProcessData); // Outgoing data with FIN. - EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(kTestStreamId, _, _, _, _)) .WillOnce(Return(QuicConsumedData(2, true))); stream_->WriteOrBufferData(StringPiece(kData1, 2), true, nullptr); EXPECT_TRUE(stream_->write_side_closed()); @@ -714,26 +636,13 @@ TEST_F(ReliableQuicStreamTest, SetDrainingOutgoingIncoming) { EXPECT_EQ(0u, session_->GetNumOpenIncomingStreams()); } -TEST_F(ReliableQuicStreamTest, FecSendPolicyReceivedConnectionOption) { - Initialize(kShouldProcessData); - - // Test ReceivedConnectionOptions. - QuicConfig* config = session_->config(); - QuicTagVector copt; - copt.push_back(kFSTR); - QuicConfigPeer::SetReceivedConnectionOptions(config, copt); - EXPECT_EQ(FEC_PROTECT_OPTIONAL, stream_->fec_policy()); - stream_->SetFromConfig(); - EXPECT_EQ(FEC_PROTECT_ALWAYS, stream_->fec_policy()); -} - TEST_F(ReliableQuicStreamTest, EarlyResponseFinHandling) { // Verify that if the server completes the response before reading the end of // the request, the received FIN is recorded. Initialize(kShouldProcessData); EXPECT_CALL(*connection_, SendConnectionCloseWithDetails(_, _)).Times(0); - EXPECT_CALL(*session_, WritevData(_, _, _, _, _, _)) + EXPECT_CALL(*session_, WritevData(_, _, _, _, _)) .WillRepeatedly(Invoke(MockQuicSpdySession::ConsumeAllData)); // Receive data for the request. |
