Chromium Code Reviews| OLD | NEW |
|---|---|
| 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/spdy/spdy_session.h" | 5 #include "net/spdy/spdy_session.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/callback.h" | 8 #include "base/callback.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/run_loop.h" | 10 #include "base/run_loop.h" |
| (...skipping 3160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 3171 | 3171 |
| 3172 session->IncreaseSendWindowSize(delta_window_size); | 3172 session->IncreaseSendWindowSize(delta_window_size); |
| 3173 EXPECT_EQ(kSpdySessionInitialWindowSize + delta_window_size, | 3173 EXPECT_EQ(kSpdySessionInitialWindowSize + delta_window_size, |
| 3174 session->session_send_window_size_); | 3174 session->session_send_window_size_); |
| 3175 | 3175 |
| 3176 session->DecreaseSendWindowSize(delta_window_size); | 3176 session->DecreaseSendWindowSize(delta_window_size); |
| 3177 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_); | 3177 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_send_window_size_); |
| 3178 } | 3178 } |
| 3179 | 3179 |
| 3180 // Incoming data for an inactive stream should not cause the session | 3180 // Incoming data for an inactive stream should not cause the session |
| 3181 // receive window size to decrease. | 3181 // receive window size to decrease, but it should cause the unacked |
|
Ryan Hamilton
2013/08/12 21:32:06
The first part of this comment seems to contradict
akalin
2013/08/12 21:41:19
The CL description was imprecise. I updated it to
| |
| 3182 // bytes to increase. | |
| 3182 TEST_P(SpdySessionTest, SessionFlowControlInactiveStream) { | 3183 TEST_P(SpdySessionTest, SessionFlowControlInactiveStream) { |
| 3183 if (GetParam() < kProtoSPDY31) | 3184 if (GetParam() < kProtoSPDY31) |
| 3184 return; | 3185 return; |
| 3185 | 3186 |
| 3186 session_deps_.host_resolver->set_synchronous_mode(true); | 3187 session_deps_.host_resolver->set_synchronous_mode(true); |
| 3187 | 3188 |
| 3188 MockConnect connect_data(SYNCHRONOUS, OK); | 3189 MockConnect connect_data(SYNCHRONOUS, OK); |
| 3189 scoped_ptr<SpdyFrame> resp(spdy_util_.ConstructSpdyBodyFrame(1, false)); | 3190 scoped_ptr<SpdyFrame> resp(spdy_util_.ConstructSpdyBodyFrame(1, false)); |
| 3190 MockRead reads[] = { | 3191 MockRead reads[] = { |
| 3191 CreateMockRead(*resp, 0), | 3192 CreateMockRead(*resp, 0), |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 3203 CreateInsecureSpdySession(http_session_, key_, BoundNetLog()); | 3204 CreateInsecureSpdySession(http_session_, key_, BoundNetLog()); |
| 3204 EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION, | 3205 EXPECT_EQ(SpdySession::FLOW_CONTROL_STREAM_AND_SESSION, |
| 3205 session->flow_control_state()); | 3206 session->flow_control_state()); |
| 3206 | 3207 |
| 3207 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_); | 3208 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_); |
| 3208 EXPECT_EQ(0, session->session_unacked_recv_window_bytes_); | 3209 EXPECT_EQ(0, session->session_unacked_recv_window_bytes_); |
| 3209 | 3210 |
| 3210 data.RunFor(1); | 3211 data.RunFor(1); |
| 3211 | 3212 |
| 3212 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_); | 3213 EXPECT_EQ(kSpdySessionInitialWindowSize, session->session_recv_window_size_); |
| 3213 EXPECT_EQ(0, session->session_unacked_recv_window_bytes_); | 3214 EXPECT_EQ(kUploadDataSize, session->session_unacked_recv_window_bytes_); |
| 3214 | 3215 |
| 3215 data.RunFor(1); | 3216 data.RunFor(1); |
| 3216 } | 3217 } |
| 3217 | 3218 |
| 3218 // A delegate that drops any received data. | 3219 // A delegate that drops any received data. |
| 3219 class DropReceivedDataDelegate : public test::StreamDelegateSendImmediate { | 3220 class DropReceivedDataDelegate : public test::StreamDelegateSendImmediate { |
| 3220 public: | 3221 public: |
| 3221 DropReceivedDataDelegate(const base::WeakPtr<SpdyStream>& stream, | 3222 DropReceivedDataDelegate(const base::WeakPtr<SpdyStream>& stream, |
| 3222 base::StringPiece data) | 3223 base::StringPiece data) |
| 3223 : StreamDelegateSendImmediate(stream, data) {} | 3224 : StreamDelegateSendImmediate(stream, data) {} |
| (...skipping 882 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 4106 EXPECT_TRUE(delegate1.send_headers_completed()); | 4107 EXPECT_TRUE(delegate1.send_headers_completed()); |
| 4107 EXPECT_EQ(std::string(), delegate1.TakeReceivedData()); | 4108 EXPECT_EQ(std::string(), delegate1.TakeReceivedData()); |
| 4108 | 4109 |
| 4109 EXPECT_TRUE(delegate2.send_headers_completed()); | 4110 EXPECT_TRUE(delegate2.send_headers_completed()); |
| 4110 EXPECT_EQ(std::string(), delegate2.TakeReceivedData()); | 4111 EXPECT_EQ(std::string(), delegate2.TakeReceivedData()); |
| 4111 | 4112 |
| 4112 EXPECT_TRUE(data.at_write_eof()); | 4113 EXPECT_TRUE(data.at_write_eof()); |
| 4113 } | 4114 } |
| 4114 | 4115 |
| 4115 } // namespace net | 4116 } // namespace net |
| OLD | NEW |