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

Side by Side Diff: net/quic/quic_http_stream_test.cc

Issue 1680243005: Make QUIC tests use certs which are valid for the hosts they connect to. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 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
« no previous file with comments | « no previous file | net/quic/quic_network_transaction_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "net/quic/quic_http_stream.h" 5 #include "net/quic/quic_http_stream.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <vector> 9 #include <vector>
10 10
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 53
54 using testing::_; 54 using testing::_;
55 using testing::AnyNumber; 55 using testing::AnyNumber;
56 using testing::Return; 56 using testing::Return;
57 57
58 namespace net { 58 namespace net {
59 namespace test { 59 namespace test {
60 namespace { 60 namespace {
61 61
62 const char kUploadData[] = "Really nifty data!"; 62 const char kUploadData[] = "Really nifty data!";
63 const char kDefaultServerHostName[] = "www.google.com"; 63 const char kDefaultServerHostName[] = "www.example.org";
64 const uint16_t kDefaultServerPort = 80; 64 const uint16_t kDefaultServerPort = 80;
65 65
66 class TestQuicConnection : public QuicConnection { 66 class TestQuicConnection : public QuicConnection {
67 public: 67 public:
68 TestQuicConnection(const QuicVersionVector& versions, 68 TestQuicConnection(const QuicVersionVector& versions,
69 QuicConnectionId connection_id, 69 QuicConnectionId connection_id,
70 IPEndPoint address, 70 IPEndPoint address,
71 QuicChromiumConnectionHelper* helper, 71 QuicChromiumConnectionHelper* helper,
72 QuicPacketWriter* writer) 72 QuicPacketWriter* writer)
73 : QuicConnection(connection_id, 73 : QuicConnection(connection_id,
(...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 } 372 }
373 373
374 TEST_P(QuicHttpStreamTest, GetRequest) { 374 TEST_P(QuicHttpStreamTest, GetRequest) {
375 SetRequest("GET", "/", DEFAULT_PRIORITY); 375 SetRequest("GET", "/", DEFAULT_PRIORITY);
376 size_t spdy_request_header_frame_length; 376 size_t spdy_request_header_frame_length;
377 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 377 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
378 &spdy_request_header_frame_length)); 378 &spdy_request_header_frame_length));
379 Initialize(); 379 Initialize();
380 380
381 request_.method = "GET"; 381 request_.method = "GET";
382 request_.url = GURL("http://www.google.com/"); 382 request_.url = GURL("http://www.example.org/");
383 383
384 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 384 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
385 callback_.callback())); 385 callback_.callback()));
386 EXPECT_EQ(OK, 386 EXPECT_EQ(OK,
387 stream_->SendRequest(headers_, &response_, callback_.callback())); 387 stream_->SendRequest(headers_, &response_, callback_.callback()));
388 388
389 // Ack the request. 389 // Ack the request.
390 ProcessPacket(ConstructAckPacket(1, 0, 0)); 390 ProcessPacket(ConstructAckPacket(1, 0, 0));
391 391
392 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback())); 392 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback()));
(...skipping 28 matching lines...) Expand all
421 421
422 // Regression test for http://crbug.com/288128 422 // Regression test for http://crbug.com/288128
423 TEST_P(QuicHttpStreamTest, GetRequestLargeResponse) { 423 TEST_P(QuicHttpStreamTest, GetRequestLargeResponse) {
424 SetRequest("GET", "/", DEFAULT_PRIORITY); 424 SetRequest("GET", "/", DEFAULT_PRIORITY);
425 size_t spdy_request_headers_frame_length; 425 size_t spdy_request_headers_frame_length;
426 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 426 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
427 &spdy_request_headers_frame_length)); 427 &spdy_request_headers_frame_length));
428 Initialize(); 428 Initialize();
429 429
430 request_.method = "GET"; 430 request_.method = "GET";
431 request_.url = GURL("http://www.google.com/"); 431 request_.url = GURL("http://www.example.org/");
432 432
433 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 433 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
434 callback_.callback())); 434 callback_.callback()));
435 EXPECT_EQ(OK, 435 EXPECT_EQ(OK,
436 stream_->SendRequest(headers_, &response_, callback_.callback())); 436 stream_->SendRequest(headers_, &response_, callback_.callback()));
437 437
438 // Ack the request. 438 // Ack the request.
439 ProcessPacket(ConstructAckPacket(1, 0, 0)); 439 ProcessPacket(ConstructAckPacket(1, 0, 0));
440 440
441 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback())); 441 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback()));
(...skipping 29 matching lines...) Expand all
471 EXPECT_EQ(static_cast<int64_t>(spdy_response_headers_frame_length), 471 EXPECT_EQ(static_cast<int64_t>(spdy_response_headers_frame_length),
472 stream_->GetTotalReceivedBytes()); 472 stream_->GetTotalReceivedBytes());
473 } 473 }
474 474
475 // Regression test for http://crbug.com/409101 475 // Regression test for http://crbug.com/409101
476 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendRequest) { 476 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendRequest) {
477 SetRequest("GET", "/", DEFAULT_PRIORITY); 477 SetRequest("GET", "/", DEFAULT_PRIORITY);
478 Initialize(); 478 Initialize();
479 479
480 request_.method = "GET"; 480 request_.method = "GET";
481 request_.url = GURL("http://www.google.com/"); 481 request_.url = GURL("http://www.example.org/");
482 482
483 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 483 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
484 callback_.callback())); 484 callback_.callback()));
485 485
486 session_->connection()->CloseConnection(QUIC_NO_ERROR, true); 486 session_->connection()->CloseConnection(QUIC_NO_ERROR, true);
487 487
488 EXPECT_EQ(ERR_CONNECTION_CLOSED, 488 EXPECT_EQ(ERR_CONNECTION_CLOSED,
489 stream_->SendRequest(headers_, &response_, callback_.callback())); 489 stream_->SendRequest(headers_, &response_, callback_.callback()));
490 490
491 EXPECT_EQ(0, stream_->GetTotalSentBytes()); 491 EXPECT_EQ(0, stream_->GetTotalSentBytes());
492 EXPECT_EQ(0, stream_->GetTotalReceivedBytes()); 492 EXPECT_EQ(0, stream_->GetTotalReceivedBytes());
493 } 493 }
494 494
495 // Regression test for http://crbug.com/584441 495 // Regression test for http://crbug.com/584441
496 TEST_P(QuicHttpStreamTest, GetSSLInfoAfterSessionClosed) { 496 TEST_P(QuicHttpStreamTest, GetSSLInfoAfterSessionClosed) {
497 SetRequest("GET", "/", DEFAULT_PRIORITY); 497 SetRequest("GET", "/", DEFAULT_PRIORITY);
498 Initialize(); 498 Initialize();
499 499
500 request_.method = "GET"; 500 request_.method = "GET";
501 request_.url = GURL("http://www.google.com/"); 501 request_.url = GURL("http://www.example.org/");
502 502
503 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 503 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
504 callback_.callback())); 504 callback_.callback()));
505 505
506 SSLInfo ssl_info; 506 SSLInfo ssl_info;
507 EXPECT_FALSE(ssl_info.is_valid()); 507 EXPECT_FALSE(ssl_info.is_valid());
508 stream_->GetSSLInfo(&ssl_info); 508 stream_->GetSSLInfo(&ssl_info);
509 EXPECT_TRUE(ssl_info.is_valid()); 509 EXPECT_TRUE(ssl_info.is_valid());
510 510
511 session_->connection()->CloseConnection(QUIC_NO_ERROR, true); 511 session_->connection()->CloseConnection(QUIC_NO_ERROR, true);
512 512
513 SSLInfo ssl_info2; 513 SSLInfo ssl_info2;
514 stream_->GetSSLInfo(&ssl_info2); 514 stream_->GetSSLInfo(&ssl_info2);
515 EXPECT_TRUE(ssl_info2.is_valid()); 515 EXPECT_TRUE(ssl_info2.is_valid());
516 } 516 }
517 517
518 TEST_P(QuicHttpStreamTest, LogGranularQuicConnectionError) { 518 TEST_P(QuicHttpStreamTest, LogGranularQuicConnectionError) {
519 SetRequest("GET", "/", DEFAULT_PRIORITY); 519 SetRequest("GET", "/", DEFAULT_PRIORITY);
520 size_t spdy_request_headers_frame_length; 520 size_t spdy_request_headers_frame_length;
521 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 521 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
522 &spdy_request_headers_frame_length)); 522 &spdy_request_headers_frame_length));
523 AddWrite(ConstructAckAndRstStreamPacket(2)); 523 AddWrite(ConstructAckAndRstStreamPacket(2));
524 use_closing_stream_ = true; 524 use_closing_stream_ = true;
525 Initialize(); 525 Initialize();
526 526
527 request_.method = "GET"; 527 request_.method = "GET";
528 request_.url = GURL("http://www.google.com/"); 528 request_.url = GURL("http://www.example.org/");
529 529
530 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 530 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
531 callback_.callback())); 531 callback_.callback()));
532 EXPECT_EQ(OK, 532 EXPECT_EQ(OK,
533 stream_->SendRequest(headers_, &response_, callback_.callback())); 533 stream_->SendRequest(headers_, &response_, callback_.callback()));
534 534
535 // Ack the request. 535 // Ack the request.
536 ProcessPacket(ConstructAckPacket(1, 0, 0)); 536 ProcessPacket(ConstructAckPacket(1, 0, 0));
537 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback())); 537 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback()));
538 538
539 EXPECT_TRUE(QuicHttpStreamPeer::WasHandshakeConfirmed(stream_.get())); 539 EXPECT_TRUE(QuicHttpStreamPeer::WasHandshakeConfirmed(stream_.get()));
540 stream_->OnClose(QUIC_PEER_GOING_AWAY); 540 stream_->OnClose(QUIC_PEER_GOING_AWAY);
541 541
542 NetErrorDetails details; 542 NetErrorDetails details;
543 EXPECT_EQ(QUIC_NO_ERROR, details.quic_connection_error); 543 EXPECT_EQ(QUIC_NO_ERROR, details.quic_connection_error);
544 stream_->PopulateNetErrorDetails(&details); 544 stream_->PopulateNetErrorDetails(&details);
545 EXPECT_EQ(QUIC_PEER_GOING_AWAY, details.quic_connection_error); 545 EXPECT_EQ(QUIC_PEER_GOING_AWAY, details.quic_connection_error);
546 } 546 }
547 547
548 TEST_P(QuicHttpStreamTest, DoNotLogGranularQuicErrorIfHandshakeNotConfirmed) { 548 TEST_P(QuicHttpStreamTest, DoNotLogGranularQuicErrorIfHandshakeNotConfirmed) {
549 SetRequest("GET", "/", DEFAULT_PRIORITY); 549 SetRequest("GET", "/", DEFAULT_PRIORITY);
550 size_t spdy_request_headers_frame_length; 550 size_t spdy_request_headers_frame_length;
551 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 551 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
552 &spdy_request_headers_frame_length)); 552 &spdy_request_headers_frame_length));
553 AddWrite(ConstructAckAndRstStreamPacket(2)); 553 AddWrite(ConstructAckAndRstStreamPacket(2));
554 use_closing_stream_ = true; 554 use_closing_stream_ = true;
555 Initialize(); 555 Initialize();
556 556
557 request_.method = "GET"; 557 request_.method = "GET";
558 request_.url = GURL("http://www.google.com/"); 558 request_.url = GURL("http://www.example.org/");
559 559
560 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 560 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
561 callback_.callback())); 561 callback_.callback()));
562 EXPECT_EQ(OK, 562 EXPECT_EQ(OK,
563 stream_->SendRequest(headers_, &response_, callback_.callback())); 563 stream_->SendRequest(headers_, &response_, callback_.callback()));
564 564
565 // Ack the request. 565 // Ack the request.
566 ProcessPacket(ConstructAckPacket(1, 0, 0)); 566 ProcessPacket(ConstructAckPacket(1, 0, 0));
567 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback())); 567 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback()));
568 568
(...skipping 13 matching lines...) Expand all
582 582
583 // Regression test for http://crbug.com/409871 583 // Regression test for http://crbug.com/409871
584 TEST_P(QuicHttpStreamTest, SessionClosedBeforeReadResponseHeaders) { 584 TEST_P(QuicHttpStreamTest, SessionClosedBeforeReadResponseHeaders) {
585 SetRequest("GET", "/", DEFAULT_PRIORITY); 585 SetRequest("GET", "/", DEFAULT_PRIORITY);
586 size_t spdy_request_headers_frame_length; 586 size_t spdy_request_headers_frame_length;
587 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 587 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
588 &spdy_request_headers_frame_length)); 588 &spdy_request_headers_frame_length));
589 Initialize(); 589 Initialize();
590 590
591 request_.method = "GET"; 591 request_.method = "GET";
592 request_.url = GURL("http://www.google.com/"); 592 request_.url = GURL("http://www.example.org/");
593 593
594 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 594 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
595 callback_.callback())); 595 callback_.callback()));
596 596
597 EXPECT_EQ(OK, 597 EXPECT_EQ(OK,
598 stream_->SendRequest(headers_, &response_, callback_.callback())); 598 stream_->SendRequest(headers_, &response_, callback_.callback()));
599 599
600 session_->connection()->CloseConnection(QUIC_NO_ERROR, true); 600 session_->connection()->CloseConnection(QUIC_NO_ERROR, true);
601 601
602 EXPECT_NE(OK, stream_->ReadResponseHeaders(callback_.callback())); 602 EXPECT_NE(OK, stream_->ReadResponseHeaders(callback_.callback()));
(...skipping 13 matching lines...) Expand all
616 AddWrite(ConstructDataPacket(2, kIncludeVersion, kFin, 0, kUploadData)); 616 AddWrite(ConstructDataPacket(2, kIncludeVersion, kFin, 0, kUploadData));
617 AddWrite(ConstructAckPacket(3, 3, 1)); 617 AddWrite(ConstructAckPacket(3, 3, 1));
618 618
619 Initialize(); 619 Initialize();
620 620
621 std::vector<scoped_ptr<UploadElementReader>> element_readers; 621 std::vector<scoped_ptr<UploadElementReader>> element_readers;
622 element_readers.push_back(make_scoped_ptr( 622 element_readers.push_back(make_scoped_ptr(
623 new UploadBytesElementReader(kUploadData, strlen(kUploadData)))); 623 new UploadBytesElementReader(kUploadData, strlen(kUploadData))));
624 ElementsUploadDataStream upload_data_stream(std::move(element_readers), 0); 624 ElementsUploadDataStream upload_data_stream(std::move(element_readers), 0);
625 request_.method = "POST"; 625 request_.method = "POST";
626 request_.url = GURL("http://www.google.com/"); 626 request_.url = GURL("http://www.example.org/");
627 request_.upload_data_stream = &upload_data_stream; 627 request_.upload_data_stream = &upload_data_stream;
628 ASSERT_EQ(OK, request_.upload_data_stream->Init(CompletionCallback())); 628 ASSERT_EQ(OK, request_.upload_data_stream->Init(CompletionCallback()));
629 629
630 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 630 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
631 callback_.callback())); 631 callback_.callback()));
632 EXPECT_EQ(OK, 632 EXPECT_EQ(OK,
633 stream_->SendRequest(headers_, &response_, callback_.callback())); 633 stream_->SendRequest(headers_, &response_, callback_.callback()));
634 634
635 // Ack both packets in the request. 635 // Ack both packets in the request.
636 ProcessPacket(ConstructAckPacket(1, 0, 0)); 636 ProcessPacket(ConstructAckPacket(1, 0, 0));
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 AddWrite(ConstructDataPacket(2, kIncludeVersion, !kFin, 0, kUploadData)); 678 AddWrite(ConstructDataPacket(2, kIncludeVersion, !kFin, 0, kUploadData));
679 AddWrite( 679 AddWrite(
680 ConstructDataPacket(3, kIncludeVersion, kFin, chunk_size, kUploadData)); 680 ConstructDataPacket(3, kIncludeVersion, kFin, chunk_size, kUploadData));
681 AddWrite(ConstructAckPacket(4, 3, 1)); 681 AddWrite(ConstructAckPacket(4, 3, 1));
682 Initialize(); 682 Initialize();
683 683
684 ChunkedUploadDataStream upload_data_stream(0); 684 ChunkedUploadDataStream upload_data_stream(0);
685 upload_data_stream.AppendData(kUploadData, chunk_size, false); 685 upload_data_stream.AppendData(kUploadData, chunk_size, false);
686 686
687 request_.method = "POST"; 687 request_.method = "POST";
688 request_.url = GURL("http://www.google.com/"); 688 request_.url = GURL("http://www.example.org/");
689 request_.upload_data_stream = &upload_data_stream; 689 request_.upload_data_stream = &upload_data_stream;
690 ASSERT_EQ(OK, request_.upload_data_stream->Init( 690 ASSERT_EQ(OK, request_.upload_data_stream->Init(
691 TestCompletionCallback().callback())); 691 TestCompletionCallback().callback()));
692 692
693 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 693 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
694 callback_.callback())); 694 callback_.callback()));
695 ASSERT_EQ(ERR_IO_PENDING, 695 ASSERT_EQ(ERR_IO_PENDING,
696 stream_->SendRequest(headers_, &response_, callback_.callback())); 696 stream_->SendRequest(headers_, &response_, callback_.callback()));
697 697
698 upload_data_stream.AppendData(kUploadData, chunk_size, true); 698 upload_data_stream.AppendData(kUploadData, chunk_size, true);
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
745 &spdy_request_headers_frame_length)); 745 &spdy_request_headers_frame_length));
746 AddWrite(ConstructDataPacket(2, kIncludeVersion, !kFin, 0, kUploadData)); 746 AddWrite(ConstructDataPacket(2, kIncludeVersion, !kFin, 0, kUploadData));
747 AddWrite(ConstructDataPacket(3, kIncludeVersion, kFin, chunk_size, "")); 747 AddWrite(ConstructDataPacket(3, kIncludeVersion, kFin, chunk_size, ""));
748 AddWrite(ConstructAckPacket(4, 3, 1)); 748 AddWrite(ConstructAckPacket(4, 3, 1));
749 Initialize(); 749 Initialize();
750 750
751 ChunkedUploadDataStream upload_data_stream(0); 751 ChunkedUploadDataStream upload_data_stream(0);
752 upload_data_stream.AppendData(kUploadData, chunk_size, false); 752 upload_data_stream.AppendData(kUploadData, chunk_size, false);
753 753
754 request_.method = "POST"; 754 request_.method = "POST";
755 request_.url = GURL("http://www.google.com/"); 755 request_.url = GURL("http://www.example.org/");
756 request_.upload_data_stream = &upload_data_stream; 756 request_.upload_data_stream = &upload_data_stream;
757 ASSERT_EQ(OK, request_.upload_data_stream->Init( 757 ASSERT_EQ(OK, request_.upload_data_stream->Init(
758 TestCompletionCallback().callback())); 758 TestCompletionCallback().callback()));
759 759
760 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 760 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
761 callback_.callback())); 761 callback_.callback()));
762 ASSERT_EQ(ERR_IO_PENDING, 762 ASSERT_EQ(ERR_IO_PENDING,
763 stream_->SendRequest(headers_, &response_, callback_.callback())); 763 stream_->SendRequest(headers_, &response_, callback_.callback()));
764 764
765 upload_data_stream.AppendData(nullptr, 0, true); 765 upload_data_stream.AppendData(nullptr, 0, true);
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 size_t spdy_request_headers_frame_length; 807 size_t spdy_request_headers_frame_length;
808 AddWrite(ConstructRequestHeadersPacket(1, !kFin, DEFAULT_PRIORITY, 808 AddWrite(ConstructRequestHeadersPacket(1, !kFin, DEFAULT_PRIORITY,
809 &spdy_request_headers_frame_length)); 809 &spdy_request_headers_frame_length));
810 AddWrite(ConstructDataPacket(2, kIncludeVersion, kFin, 0, "")); 810 AddWrite(ConstructDataPacket(2, kIncludeVersion, kFin, 0, ""));
811 AddWrite(ConstructAckPacket(3, 3, 1)); 811 AddWrite(ConstructAckPacket(3, 3, 1));
812 Initialize(); 812 Initialize();
813 813
814 ChunkedUploadDataStream upload_data_stream(0); 814 ChunkedUploadDataStream upload_data_stream(0);
815 815
816 request_.method = "POST"; 816 request_.method = "POST";
817 request_.url = GURL("http://www.google.com/"); 817 request_.url = GURL("http://www.example.org/");
818 request_.upload_data_stream = &upload_data_stream; 818 request_.upload_data_stream = &upload_data_stream;
819 ASSERT_EQ(OK, request_.upload_data_stream->Init( 819 ASSERT_EQ(OK, request_.upload_data_stream->Init(
820 TestCompletionCallback().callback())); 820 TestCompletionCallback().callback()));
821 821
822 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 822 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
823 callback_.callback())); 823 callback_.callback()));
824 ASSERT_EQ(ERR_IO_PENDING, 824 ASSERT_EQ(ERR_IO_PENDING,
825 stream_->SendRequest(headers_, &response_, callback_.callback())); 825 stream_->SendRequest(headers_, &response_, callback_.callback()));
826 826
827 upload_data_stream.AppendData(nullptr, 0, true); 827 upload_data_stream.AppendData(nullptr, 0, true);
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
867 TEST_P(QuicHttpStreamTest, DestroyedEarly) { 867 TEST_P(QuicHttpStreamTest, DestroyedEarly) {
868 SetRequest("GET", "/", DEFAULT_PRIORITY); 868 SetRequest("GET", "/", DEFAULT_PRIORITY);
869 size_t spdy_request_headers_frame_length; 869 size_t spdy_request_headers_frame_length;
870 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY, 870 AddWrite(ConstructRequestHeadersPacket(1, kFin, DEFAULT_PRIORITY,
871 &spdy_request_headers_frame_length)); 871 &spdy_request_headers_frame_length));
872 AddWrite(ConstructAckAndRstStreamPacket(2)); 872 AddWrite(ConstructAckAndRstStreamPacket(2));
873 use_closing_stream_ = true; 873 use_closing_stream_ = true;
874 Initialize(); 874 Initialize();
875 875
876 request_.method = "GET"; 876 request_.method = "GET";
877 request_.url = GURL("http://www.google.com/"); 877 request_.url = GURL("http://www.example.org/");
878 878
879 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 879 EXPECT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
880 callback_.callback())); 880 callback_.callback()));
881 EXPECT_EQ(OK, 881 EXPECT_EQ(OK,
882 stream_->SendRequest(headers_, &response_, callback_.callback())); 882 stream_->SendRequest(headers_, &response_, callback_.callback()));
883 883
884 // Ack the request. 884 // Ack the request.
885 ProcessPacket(ConstructAckPacket(1, 0, 0)); 885 ProcessPacket(ConstructAckPacket(1, 0, 0));
886 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback())); 886 EXPECT_EQ(ERR_IO_PENDING, stream_->ReadResponseHeaders(callback_.callback()));
887 887
(...skipping 17 matching lines...) Expand all
905 TEST_P(QuicHttpStreamTest, Priority) { 905 TEST_P(QuicHttpStreamTest, Priority) {
906 SetRequest("GET", "/", MEDIUM); 906 SetRequest("GET", "/", MEDIUM);
907 size_t spdy_request_headers_frame_length; 907 size_t spdy_request_headers_frame_length;
908 AddWrite(ConstructRequestHeadersPacket(1, kFin, MEDIUM, 908 AddWrite(ConstructRequestHeadersPacket(1, kFin, MEDIUM,
909 &spdy_request_headers_frame_length)); 909 &spdy_request_headers_frame_length));
910 AddWrite(ConstructAckAndRstStreamPacket(2)); 910 AddWrite(ConstructAckAndRstStreamPacket(2));
911 use_closing_stream_ = true; 911 use_closing_stream_ = true;
912 Initialize(); 912 Initialize();
913 913
914 request_.method = "GET"; 914 request_.method = "GET";
915 request_.url = GURL("http://www.google.com/"); 915 request_.url = GURL("http://www.example.org/");
916 916
917 EXPECT_EQ(OK, stream_->InitializeStream(&request_, MEDIUM, net_log_, 917 EXPECT_EQ(OK, stream_->InitializeStream(&request_, MEDIUM, net_log_,
918 callback_.callback())); 918 callback_.callback()));
919 919
920 // Check that priority is highest. 920 // Check that priority is highest.
921 QuicChromiumClientStream* reliable_stream = 921 QuicChromiumClientStream* reliable_stream =
922 QuicHttpStreamPeer::GetQuicChromiumClientStream(stream_.get()); 922 QuicHttpStreamPeer::GetQuicChromiumClientStream(stream_.get());
923 DCHECK(reliable_stream); 923 DCHECK(reliable_stream);
924 DCHECK_EQ(kV3HighestPriority, reliable_stream->Priority()); 924 DCHECK_EQ(kV3HighestPriority, reliable_stream->Priority());
925 925
(...skipping 28 matching lines...) Expand all
954 // Regression test for http://crbug.com/294870 954 // Regression test for http://crbug.com/294870
955 TEST_P(QuicHttpStreamTest, CheckPriorityWithNoDelegate) { 955 TEST_P(QuicHttpStreamTest, CheckPriorityWithNoDelegate) {
956 SetRequest("GET", "/", MEDIUM); 956 SetRequest("GET", "/", MEDIUM);
957 use_closing_stream_ = true; 957 use_closing_stream_ = true;
958 958
959 AddWrite(ConstructRstStreamPacket(1)); 959 AddWrite(ConstructRstStreamPacket(1));
960 960
961 Initialize(); 961 Initialize();
962 962
963 request_.method = "GET"; 963 request_.method = "GET";
964 request_.url = GURL("http://www.google.com/"); 964 request_.url = GURL("http://www.example.org/");
965 965
966 EXPECT_EQ(OK, stream_->InitializeStream(&request_, MEDIUM, net_log_, 966 EXPECT_EQ(OK, stream_->InitializeStream(&request_, MEDIUM, net_log_,
967 callback_.callback())); 967 callback_.callback()));
968 968
969 // Check that priority is highest. 969 // Check that priority is highest.
970 QuicChromiumClientStream* reliable_stream = 970 QuicChromiumClientStream* reliable_stream =
971 QuicHttpStreamPeer::GetQuicChromiumClientStream(stream_.get()); 971 QuicHttpStreamPeer::GetQuicChromiumClientStream(stream_.get());
972 DCHECK(reliable_stream); 972 DCHECK(reliable_stream);
973 QuicChromiumClientStream::Delegate* delegate = reliable_stream->GetDelegate(); 973 QuicChromiumClientStream::Delegate* delegate = reliable_stream->GetDelegate();
974 DCHECK(delegate); 974 DCHECK(delegate);
(...skipping 10 matching lines...) Expand all
985 } 985 }
986 986
987 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendHeadersComplete) { 987 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendHeadersComplete) {
988 SetRequest("POST", "/", DEFAULT_PRIORITY); 988 SetRequest("POST", "/", DEFAULT_PRIORITY);
989 AddWrite(SYNCHRONOUS, ERR_FAILED); 989 AddWrite(SYNCHRONOUS, ERR_FAILED);
990 Initialize(); 990 Initialize();
991 991
992 ChunkedUploadDataStream upload_data_stream(0); 992 ChunkedUploadDataStream upload_data_stream(0);
993 993
994 request_.method = "POST"; 994 request_.method = "POST";
995 request_.url = GURL("http://www.google.com/"); 995 request_.url = GURL("http://www.example.org/");
996 request_.upload_data_stream = &upload_data_stream; 996 request_.upload_data_stream = &upload_data_stream;
997 ASSERT_EQ(OK, request_.upload_data_stream->Init( 997 ASSERT_EQ(OK, request_.upload_data_stream->Init(
998 TestCompletionCallback().callback())); 998 TestCompletionCallback().callback()));
999 999
1000 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 1000 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
1001 callback_.callback())); 1001 callback_.callback()));
1002 ASSERT_EQ(ERR_QUIC_PROTOCOL_ERROR, 1002 ASSERT_EQ(ERR_QUIC_PROTOCOL_ERROR,
1003 stream_->SendRequest(headers_, &response_, callback_.callback())); 1003 stream_->SendRequest(headers_, &response_, callback_.callback()));
1004 } 1004 }
1005 1005
1006 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendBodyComplete) { 1006 TEST_P(QuicHttpStreamTest, SessionClosedBeforeSendBodyComplete) {
1007 SetRequest("POST", "/", DEFAULT_PRIORITY); 1007 SetRequest("POST", "/", DEFAULT_PRIORITY);
1008 size_t spdy_request_headers_frame_length; 1008 size_t spdy_request_headers_frame_length;
1009 AddWrite(ConstructRequestHeadersPacket(1, !kFin, DEFAULT_PRIORITY, 1009 AddWrite(ConstructRequestHeadersPacket(1, !kFin, DEFAULT_PRIORITY,
1010 &spdy_request_headers_frame_length)); 1010 &spdy_request_headers_frame_length));
1011 AddWrite(SYNCHRONOUS, ERR_FAILED); 1011 AddWrite(SYNCHRONOUS, ERR_FAILED);
1012 Initialize(); 1012 Initialize();
1013 1013
1014 ChunkedUploadDataStream upload_data_stream(0); 1014 ChunkedUploadDataStream upload_data_stream(0);
1015 size_t chunk_size = strlen(kUploadData); 1015 size_t chunk_size = strlen(kUploadData);
1016 upload_data_stream.AppendData(kUploadData, chunk_size, false); 1016 upload_data_stream.AppendData(kUploadData, chunk_size, false);
1017 1017
1018 request_.method = "POST"; 1018 request_.method = "POST";
1019 request_.url = GURL("http://www.google.com/"); 1019 request_.url = GURL("http://www.example.org/");
1020 request_.upload_data_stream = &upload_data_stream; 1020 request_.upload_data_stream = &upload_data_stream;
1021 ASSERT_EQ(OK, request_.upload_data_stream->Init( 1021 ASSERT_EQ(OK, request_.upload_data_stream->Init(
1022 TestCompletionCallback().callback())); 1022 TestCompletionCallback().callback()));
1023 1023
1024 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_, 1024 ASSERT_EQ(OK, stream_->InitializeStream(&request_, DEFAULT_PRIORITY, net_log_,
1025 callback_.callback())); 1025 callback_.callback()));
1026 ASSERT_EQ(ERR_QUIC_PROTOCOL_ERROR, 1026 ASSERT_EQ(ERR_QUIC_PROTOCOL_ERROR,
1027 stream_->SendRequest(headers_, &response_, callback_.callback())); 1027 stream_->SendRequest(headers_, &response_, callback_.callback()));
1028 } 1028 }
1029 1029
1030 } // namespace test 1030 } // namespace test
1031 } // namespace net 1031 } // namespace net
OLDNEW
« no previous file with comments | « no previous file | net/quic/quic_network_transaction_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698