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

Side by Side Diff: net/spdy/spdy_stream_spdy3_unittest.cc

Issue 15701009: [SPDY] Add a SpdyStreamType enum and use it for SpdyStream (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: CHECK -> DCHECK Created 7 years, 7 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "base/memory/ref_counted.h" 6 #include "base/memory/ref_counted.h"
7 #include "base/memory/scoped_ptr.h" 7 #include "base/memory/scoped_ptr.h"
8 #include "base/memory/weak_ptr.h" 8 #include "base/memory/weak_ptr.h"
9 #include "base/strings/string_piece.h" 9 #include "base/strings/string_piece.h"
10 #include "net/base/completion_callback.h" 10 #include "net/base/completion_callback.h"
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 MockConnect connect_data(SYNCHRONOUS, OK); 120 MockConnect connect_data(SYNCHRONOUS, OK);
121 data.set_connect_data(connect_data); 121 data.set_connect_data(connect_data);
122 122
123 session_deps_.socket_factory->AddSocketDataProvider(&data); 123 session_deps_.socket_factory->AddSocketDataProvider(&data);
124 124
125 scoped_refptr<SpdySession> session(CreateSpdySession()); 125 scoped_refptr<SpdySession> session(CreateSpdySession());
126 126
127 InitializeSpdySession(session, host_port_pair_); 127 InitializeSpdySession(session, host_port_pair_);
128 128
129 base::WeakPtr<SpdyStream> stream = 129 base::WeakPtr<SpdyStream> stream =
130 CreateStreamSynchronously(session, url, LOWEST, BoundNetLog()); 130 CreateStreamSynchronously(
131 SPDY_BIDIRECTIONAL_STREAM, session, url, LOWEST, BoundNetLog());
131 ASSERT_TRUE(stream.get() != NULL); 132 ASSERT_TRUE(stream.get() != NULL);
132 133
133 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece); 134 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece);
134 stream->SetDelegate(&delegate); 135 stream->SetDelegate(&delegate);
135 136
136 EXPECT_FALSE(stream->HasUrl()); 137 EXPECT_FALSE(stream->HasUrl());
137 138
138 scoped_ptr<SpdyHeaderBlock> headers( 139 scoped_ptr<SpdyHeaderBlock> headers(
139 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 140 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
140 EXPECT_EQ(ERR_IO_PENDING, 141 EXPECT_EQ(ERR_IO_PENDING,
(...skipping 22 matching lines...) Expand all
163 OrderedSocketData data(reads, arraysize(reads), NULL, 0); 164 OrderedSocketData data(reads, arraysize(reads), NULL, 0);
164 MockConnect connect_data(SYNCHRONOUS, OK); 165 MockConnect connect_data(SYNCHRONOUS, OK);
165 data.set_connect_data(connect_data); 166 data.set_connect_data(connect_data);
166 167
167 session_deps_.socket_factory->AddSocketDataProvider(&data); 168 session_deps_.socket_factory->AddSocketDataProvider(&data);
168 169
169 InitializeSpdySession(spdy_session, host_port_pair_); 170 InitializeSpdySession(spdy_session, host_port_pair_);
170 BoundNetLog net_log; 171 BoundNetLog net_log;
171 172
172 // Conjure up a stream. 173 // Conjure up a stream.
173 SpdyStream stream(spdy_session, 174 SpdyStream stream(SPDY_PUSH_STREAM,
175 spdy_session,
174 std::string(), 176 std::string(),
175 DEFAULT_PRIORITY, 177 DEFAULT_PRIORITY,
176 kSpdyStreamInitialWindowSize, 178 kSpdyStreamInitialWindowSize,
177 kSpdyStreamInitialWindowSize, 179 kSpdyStreamInitialWindowSize,
178 true,
179 net_log); 180 net_log);
180 stream.set_stream_id(2); 181 stream.set_stream_id(2);
181 EXPECT_FALSE(stream.response_received()); 182 EXPECT_FALSE(stream.response_received());
182 EXPECT_FALSE(stream.HasUrl()); 183 EXPECT_FALSE(stream.HasUrl());
183 184
184 // Set a couple of headers. 185 // Set a couple of headers.
185 SpdyHeaderBlock response; 186 SpdyHeaderBlock response;
186 GURL url(kStreamUrl); 187 GURL url(kStreamUrl);
187 response[":host"] = url.host(); 188 response[":host"] = url.host();
188 response[":scheme"] = url.scheme(); 189 response[":scheme"] = url.scheme();
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
236 MockConnect connect_data(SYNCHRONOUS, OK); 237 MockConnect connect_data(SYNCHRONOUS, OK);
237 data.set_connect_data(connect_data); 238 data.set_connect_data(connect_data);
238 239
239 session_deps_.socket_factory->AddSocketDataProvider(&data); 240 session_deps_.socket_factory->AddSocketDataProvider(&data);
240 241
241 scoped_refptr<SpdySession> session(CreateSpdySession()); 242 scoped_refptr<SpdySession> session(CreateSpdySession());
242 243
243 InitializeSpdySession(session, host_port_pair_); 244 InitializeSpdySession(session, host_port_pair_);
244 245
245 base::WeakPtr<SpdyStream> stream = 246 base::WeakPtr<SpdyStream> stream =
246 CreateStreamSynchronously(session, url, LOWEST, log.bound()); 247 CreateStreamSynchronously(
248 SPDY_BIDIRECTIONAL_STREAM, session, url, LOWEST, log.bound());
247 ASSERT_TRUE(stream.get() != NULL); 249 ASSERT_TRUE(stream.get() != NULL);
248 250
249 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece); 251 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece);
250 stream->SetDelegate(&delegate); 252 stream->SetDelegate(&delegate);
251 253
252 EXPECT_FALSE(stream->HasUrl()); 254 EXPECT_FALSE(stream->HasUrl());
253 255
254 scoped_ptr<SpdyHeaderBlock> headers( 256 scoped_ptr<SpdyHeaderBlock> headers(
255 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 257 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
256 EXPECT_EQ(ERR_IO_PENDING, 258 EXPECT_EQ(ERR_IO_PENDING,
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
319 MockConnect connect_data(SYNCHRONOUS, OK); 321 MockConnect connect_data(SYNCHRONOUS, OK);
320 data.set_connect_data(connect_data); 322 data.set_connect_data(connect_data);
321 323
322 session_deps_.socket_factory->AddSocketDataProvider(&data); 324 session_deps_.socket_factory->AddSocketDataProvider(&data);
323 325
324 scoped_refptr<SpdySession> session(CreateSpdySession()); 326 scoped_refptr<SpdySession> session(CreateSpdySession());
325 327
326 InitializeSpdySession(session, host_port_pair_); 328 InitializeSpdySession(session, host_port_pair_);
327 329
328 base::WeakPtr<SpdyStream> stream = 330 base::WeakPtr<SpdyStream> stream =
329 CreateStreamSynchronously(session, url, LOWEST, BoundNetLog()); 331 CreateStreamSynchronously(
332 SPDY_REQUEST_RESPONSE_STREAM, session, url, LOWEST, BoundNetLog());
330 ASSERT_TRUE(stream.get() != NULL); 333 ASSERT_TRUE(stream.get() != NULL);
331 334
332 std::string body_data(3 * kMaxSpdyFrameChunkSize, 'x'); 335 std::string body_data(3 * kMaxSpdyFrameChunkSize, 'x');
333 StreamDelegateWithBody delegate(stream, body_data); 336 StreamDelegateWithBody delegate(stream, body_data);
334 stream->SetDelegate(&delegate); 337 stream->SetDelegate(&delegate);
335 338
336 EXPECT_FALSE(stream->HasUrl()); 339 EXPECT_FALSE(stream->HasUrl());
337 340
338 scoped_ptr<SpdyHeaderBlock> headers( 341 scoped_ptr<SpdyHeaderBlock> headers(
339 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 342 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 MockConnect connect_data(SYNCHRONOUS, OK); 385 MockConnect connect_data(SYNCHRONOUS, OK);
383 data.set_connect_data(connect_data); 386 data.set_connect_data(connect_data);
384 387
385 session_deps_.socket_factory->AddSocketDataProvider(&data); 388 session_deps_.socket_factory->AddSocketDataProvider(&data);
386 389
387 scoped_refptr<SpdySession> session(CreateSpdySession()); 390 scoped_refptr<SpdySession> session(CreateSpdySession());
388 391
389 InitializeSpdySession(session, host_port_pair_); 392 InitializeSpdySession(session, host_port_pair_);
390 393
391 base::WeakPtr<SpdyStream> stream = 394 base::WeakPtr<SpdyStream> stream =
392 CreateStreamSynchronously(session, url, LOWEST, BoundNetLog()); 395 CreateStreamSynchronously(
396 SPDY_BIDIRECTIONAL_STREAM, session, url, LOWEST, BoundNetLog());
393 ASSERT_TRUE(stream.get() != NULL); 397 ASSERT_TRUE(stream.get() != NULL);
394 398
395 std::string body_data(3 * kMaxSpdyFrameChunkSize, 'x'); 399 std::string body_data(3 * kMaxSpdyFrameChunkSize, 'x');
396 StreamDelegateSendImmediate delegate(stream, body_data); 400 StreamDelegateSendImmediate delegate(stream, body_data);
397 stream->SetDelegate(&delegate); 401 stream->SetDelegate(&delegate);
398 402
399 EXPECT_FALSE(stream->HasUrl()); 403 EXPECT_FALSE(stream->HasUrl());
400 404
401 scoped_ptr<SpdyHeaderBlock> headers( 405 scoped_ptr<SpdyHeaderBlock> headers(
402 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 406 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
444 data.set_connect_data(connect_data); 448 data.set_connect_data(connect_data);
445 449
446 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data); 450 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data);
447 451
448 scoped_refptr<SpdySession> session(CreateSpdySession()); 452 scoped_refptr<SpdySession> session(CreateSpdySession());
449 GURL url(kStreamUrl); 453 GURL url(kStreamUrl);
450 454
451 InitializeSpdySession(session, host_port_pair_); 455 InitializeSpdySession(session, host_port_pair_);
452 456
453 base::WeakPtr<SpdyStream> stream = 457 base::WeakPtr<SpdyStream> stream =
454 CreateStreamSynchronously(session, url, LOWEST, log.bound()); 458 CreateStreamSynchronously(
459 SPDY_BIDIRECTIONAL_STREAM, session, url, LOWEST, log.bound());
455 ASSERT_TRUE(stream.get() != NULL); 460 ASSERT_TRUE(stream.get() != NULL);
456 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece); 461 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece);
457 stream->SetDelegate(&delegate); 462 stream->SetDelegate(&delegate);
458 463
459 scoped_ptr<SpdyHeaderBlock> headers( 464 scoped_ptr<SpdyHeaderBlock> headers(
460 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 465 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
461 EXPECT_EQ(ERR_IO_PENDING, 466 EXPECT_EQ(ERR_IO_PENDING,
462 stream->SendRequestHeaders(headers.Pass(), MORE_DATA_TO_SEND)); 467 stream->SendRequestHeaders(headers.Pass(), MORE_DATA_TO_SEND));
463 EXPECT_TRUE(stream->HasUrl()); 468 EXPECT_TRUE(stream->HasUrl());
464 EXPECT_EQ(kStreamUrl, stream->GetUrl().spec()); 469 EXPECT_EQ(kStreamUrl, stream->GetUrl().spec());
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 MockConnect connect_data(SYNCHRONOUS, OK); 541 MockConnect connect_data(SYNCHRONOUS, OK);
537 data.set_connect_data(connect_data); 542 data.set_connect_data(connect_data);
538 543
539 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data); 544 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data);
540 545
541 scoped_refptr<SpdySession> session(CreateSpdySession()); 546 scoped_refptr<SpdySession> session(CreateSpdySession());
542 547
543 InitializeSpdySession(session, host_port_pair_); 548 InitializeSpdySession(session, host_port_pair_);
544 549
545 base::WeakPtr<SpdyStream> stream = 550 base::WeakPtr<SpdyStream> stream =
546 CreateStreamSynchronously(session, url, LOWEST, BoundNetLog()); 551 CreateStreamSynchronously(
552 SPDY_REQUEST_RESPONSE_STREAM, session, url, LOWEST, BoundNetLog());
547 ASSERT_TRUE(stream.get() != NULL); 553 ASSERT_TRUE(stream.get() != NULL);
548 554
549 StreamDelegateWithBody delegate(stream, kPostBodyStringPiece); 555 StreamDelegateWithBody delegate(stream, kPostBodyStringPiece);
550 stream->SetDelegate(&delegate); 556 stream->SetDelegate(&delegate);
551 557
552 EXPECT_FALSE(stream->HasUrl()); 558 EXPECT_FALSE(stream->HasUrl());
553 EXPECT_FALSE(stream->send_stalled_by_flow_control()); 559 EXPECT_FALSE(stream->send_stalled_by_flow_control());
554 560
555 scoped_ptr<SpdyHeaderBlock> headers( 561 scoped_ptr<SpdyHeaderBlock> headers(
556 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 562 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
623 MockConnect connect_data(SYNCHRONOUS, OK); 629 MockConnect connect_data(SYNCHRONOUS, OK);
624 data.set_connect_data(connect_data); 630 data.set_connect_data(connect_data);
625 631
626 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data); 632 session_deps_.deterministic_socket_factory->AddSocketDataProvider(&data);
627 633
628 scoped_refptr<SpdySession> session(CreateSpdySession()); 634 scoped_refptr<SpdySession> session(CreateSpdySession());
629 635
630 InitializeSpdySession(session, host_port_pair_); 636 InitializeSpdySession(session, host_port_pair_);
631 637
632 base::WeakPtr<SpdyStream> stream = 638 base::WeakPtr<SpdyStream> stream =
633 CreateStreamSynchronously(session, url, LOWEST, BoundNetLog()); 639 CreateStreamSynchronously(
640 SPDY_BIDIRECTIONAL_STREAM, session, url, LOWEST, BoundNetLog());
634 ASSERT_TRUE(stream.get() != NULL); 641 ASSERT_TRUE(stream.get() != NULL);
635 642
636 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece); 643 StreamDelegateSendImmediate delegate(stream, kPostBodyStringPiece);
637 stream->SetDelegate(&delegate); 644 stream->SetDelegate(&delegate);
638 645
639 EXPECT_FALSE(stream->HasUrl()); 646 EXPECT_FALSE(stream->HasUrl());
640 647
641 scoped_ptr<SpdyHeaderBlock> headers( 648 scoped_ptr<SpdyHeaderBlock> headers(
642 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength)); 649 spdy_util_.ConstructPostHeaderBlock(kStreamUrl, kPostBodyLength));
643 EXPECT_EQ(ERR_IO_PENDING, 650 EXPECT_EQ(ERR_IO_PENDING,
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
679 TEST_F(SpdyStreamSpdy3Test, ResumeAfterSendWindowSizeAdjustBidirectional) { 686 TEST_F(SpdyStreamSpdy3Test, ResumeAfterSendWindowSizeAdjustBidirectional) {
680 RunResumeAfterUnstallBidirectionalTest( 687 RunResumeAfterUnstallBidirectionalTest(
681 base::Bind(&AdjustStreamSendWindowSize)); 688 base::Bind(&AdjustStreamSendWindowSize));
682 } 689 }
683 690
684 } // namespace 691 } // namespace
685 692
686 } // namespace test 693 } // namespace test
687 694
688 } // namespace net 695 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698