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/http/http_stream_factory_impl.h" | 5 #include "net/http/http_stream_factory_impl.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
422 | 422 |
423 INSTANTIATE_TEST_CASE_P(NextProto, | 423 INSTANTIATE_TEST_CASE_P(NextProto, |
424 HttpStreamFactoryTest, | 424 HttpStreamFactoryTest, |
425 testing::Values(kProtoSPDY31, | 425 testing::Values(kProtoSPDY31, |
426 kProtoHTTP2)); | 426 kProtoHTTP2)); |
427 | 427 |
428 TEST_P(HttpStreamFactoryTest, PreconnectDirect) { | 428 TEST_P(HttpStreamFactoryTest, PreconnectDirect) { |
429 for (size_t i = 0; i < arraysize(kTests); ++i) { | 429 for (size_t i = 0; i < arraysize(kTests); ++i) { |
430 SpdySessionDependencies session_deps( | 430 SpdySessionDependencies session_deps( |
431 GetParam(), ProxyService::CreateDirect()); | 431 GetParam(), ProxyService::CreateDirect()); |
432 scoped_refptr<HttpNetworkSession> session( | 432 scoped_ptr<HttpNetworkSession> session( |
433 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 433 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
434 HttpNetworkSessionPeer peer(session); | 434 HttpNetworkSessionPeer peer(session.get()); |
435 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 435 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
436 new CapturePreconnectsTransportSocketPool( | 436 new CapturePreconnectsTransportSocketPool( |
437 session_deps.host_resolver.get(), | 437 session_deps.host_resolver.get(), |
438 session_deps.cert_verifier.get()); | 438 session_deps.cert_verifier.get()); |
439 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 439 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
440 new CapturePreconnectsSSLSocketPool( | 440 new CapturePreconnectsSSLSocketPool( |
441 session_deps.host_resolver.get(), | 441 session_deps.host_resolver.get(), |
442 session_deps.cert_verifier.get()); | 442 session_deps.cert_verifier.get()); |
443 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 443 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
444 new MockClientSocketPoolManager); | 444 new MockClientSocketPoolManager); |
445 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); | 445 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); |
446 mock_pool_manager->SetSSLSocketPool(ssl_conn_pool); | 446 mock_pool_manager->SetSSLSocketPool(ssl_conn_pool); |
447 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 447 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
448 PreconnectHelper(kTests[i], session.get()); | 448 PreconnectHelper(kTests[i], session.get()); |
449 if (kTests[i].ssl) | 449 if (kTests[i].ssl) |
450 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 450 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
451 else | 451 else |
452 EXPECT_EQ(kTests[i].num_streams, transport_conn_pool->last_num_streams()); | 452 EXPECT_EQ(kTests[i].num_streams, transport_conn_pool->last_num_streams()); |
453 } | 453 } |
454 } | 454 } |
455 | 455 |
456 TEST_P(HttpStreamFactoryTest, PreconnectHttpProxy) { | 456 TEST_P(HttpStreamFactoryTest, PreconnectHttpProxy) { |
457 for (size_t i = 0; i < arraysize(kTests); ++i) { | 457 for (size_t i = 0; i < arraysize(kTests); ++i) { |
458 SpdySessionDependencies session_deps( | 458 SpdySessionDependencies session_deps( |
459 GetParam(), ProxyService::CreateFixed("http_proxy")); | 459 GetParam(), ProxyService::CreateFixed("http_proxy")); |
460 scoped_refptr<HttpNetworkSession> session( | 460 scoped_ptr<HttpNetworkSession> session( |
461 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 461 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
462 HttpNetworkSessionPeer peer(session); | 462 HttpNetworkSessionPeer peer(session.get()); |
463 HostPortPair proxy_host("http_proxy", 80); | 463 HostPortPair proxy_host("http_proxy", 80); |
464 CapturePreconnectsHttpProxySocketPool* http_proxy_pool = | 464 CapturePreconnectsHttpProxySocketPool* http_proxy_pool = |
465 new CapturePreconnectsHttpProxySocketPool( | 465 new CapturePreconnectsHttpProxySocketPool( |
466 session_deps.host_resolver.get(), | 466 session_deps.host_resolver.get(), |
467 session_deps.cert_verifier.get()); | 467 session_deps.cert_verifier.get()); |
468 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 468 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
469 new CapturePreconnectsSSLSocketPool( | 469 new CapturePreconnectsSSLSocketPool( |
470 session_deps.host_resolver.get(), | 470 session_deps.host_resolver.get(), |
471 session_deps.cert_verifier.get()); | 471 session_deps.cert_verifier.get()); |
472 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 472 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
473 new MockClientSocketPoolManager); | 473 new MockClientSocketPoolManager); |
474 mock_pool_manager->SetSocketPoolForHTTPProxy(proxy_host, http_proxy_pool); | 474 mock_pool_manager->SetSocketPoolForHTTPProxy(proxy_host, http_proxy_pool); |
475 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); | 475 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); |
476 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 476 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
477 PreconnectHelper(kTests[i], session.get()); | 477 PreconnectHelper(kTests[i], session.get()); |
478 if (kTests[i].ssl) | 478 if (kTests[i].ssl) |
479 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 479 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
480 else | 480 else |
481 EXPECT_EQ(kTests[i].num_streams, http_proxy_pool->last_num_streams()); | 481 EXPECT_EQ(kTests[i].num_streams, http_proxy_pool->last_num_streams()); |
482 } | 482 } |
483 } | 483 } |
484 | 484 |
485 TEST_P(HttpStreamFactoryTest, PreconnectSocksProxy) { | 485 TEST_P(HttpStreamFactoryTest, PreconnectSocksProxy) { |
486 for (size_t i = 0; i < arraysize(kTests); ++i) { | 486 for (size_t i = 0; i < arraysize(kTests); ++i) { |
487 SpdySessionDependencies session_deps( | 487 SpdySessionDependencies session_deps( |
488 GetParam(), ProxyService::CreateFixed("socks4://socks_proxy:1080")); | 488 GetParam(), ProxyService::CreateFixed("socks4://socks_proxy:1080")); |
489 scoped_refptr<HttpNetworkSession> session( | 489 scoped_ptr<HttpNetworkSession> session( |
490 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 490 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
491 HttpNetworkSessionPeer peer(session); | 491 HttpNetworkSessionPeer peer(session.get()); |
492 HostPortPair proxy_host("socks_proxy", 1080); | 492 HostPortPair proxy_host("socks_proxy", 1080); |
493 CapturePreconnectsSOCKSSocketPool* socks_proxy_pool = | 493 CapturePreconnectsSOCKSSocketPool* socks_proxy_pool = |
494 new CapturePreconnectsSOCKSSocketPool( | 494 new CapturePreconnectsSOCKSSocketPool( |
495 session_deps.host_resolver.get(), | 495 session_deps.host_resolver.get(), |
496 session_deps.cert_verifier.get()); | 496 session_deps.cert_verifier.get()); |
497 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 497 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
498 new CapturePreconnectsSSLSocketPool( | 498 new CapturePreconnectsSSLSocketPool( |
499 session_deps.host_resolver.get(), | 499 session_deps.host_resolver.get(), |
500 session_deps.cert_verifier.get()); | 500 session_deps.cert_verifier.get()); |
501 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 501 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
502 new MockClientSocketPoolManager); | 502 new MockClientSocketPoolManager); |
503 mock_pool_manager->SetSocketPoolForSOCKSProxy(proxy_host, socks_proxy_pool); | 503 mock_pool_manager->SetSocketPoolForSOCKSProxy(proxy_host, socks_proxy_pool); |
504 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); | 504 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); |
505 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 505 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
506 PreconnectHelper(kTests[i], session.get()); | 506 PreconnectHelper(kTests[i], session.get()); |
507 if (kTests[i].ssl) | 507 if (kTests[i].ssl) |
508 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 508 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
509 else | 509 else |
510 EXPECT_EQ(kTests[i].num_streams, socks_proxy_pool->last_num_streams()); | 510 EXPECT_EQ(kTests[i].num_streams, socks_proxy_pool->last_num_streams()); |
511 } | 511 } |
512 } | 512 } |
513 | 513 |
514 TEST_P(HttpStreamFactoryTest, PreconnectDirectWithExistingSpdySession) { | 514 TEST_P(HttpStreamFactoryTest, PreconnectDirectWithExistingSpdySession) { |
515 for (size_t i = 0; i < arraysize(kTests); ++i) { | 515 for (size_t i = 0; i < arraysize(kTests); ++i) { |
516 SpdySessionDependencies session_deps( | 516 SpdySessionDependencies session_deps( |
517 GetParam(), ProxyService::CreateDirect()); | 517 GetParam(), ProxyService::CreateDirect()); |
518 scoped_refptr<HttpNetworkSession> session( | 518 scoped_ptr<HttpNetworkSession> session( |
519 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 519 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
520 HttpNetworkSessionPeer peer(session); | 520 HttpNetworkSessionPeer peer(session.get()); |
521 | 521 |
522 // Put a SpdySession in the pool. | 522 // Put a SpdySession in the pool. |
523 HostPortPair host_port_pair("www.google.com", 443); | 523 HostPortPair host_port_pair("www.google.com", 443); |
524 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), | 524 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), |
525 PRIVACY_MODE_DISABLED); | 525 PRIVACY_MODE_DISABLED); |
526 ignore_result(CreateFakeSpdySession(session->spdy_session_pool(), key)); | 526 ignore_result(CreateFakeSpdySession(session->spdy_session_pool(), key)); |
527 | 527 |
528 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 528 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
529 new CapturePreconnectsTransportSocketPool( | 529 new CapturePreconnectsTransportSocketPool( |
530 session_deps.host_resolver.get(), | 530 session_deps.host_resolver.get(), |
(...skipping 18 matching lines...) Expand all Loading... |
549 } | 549 } |
550 } | 550 } |
551 | 551 |
552 // Verify that preconnects to unsafe ports are cancelled before they reach | 552 // Verify that preconnects to unsafe ports are cancelled before they reach |
553 // the SocketPool. | 553 // the SocketPool. |
554 TEST_P(HttpStreamFactoryTest, PreconnectUnsafePort) { | 554 TEST_P(HttpStreamFactoryTest, PreconnectUnsafePort) { |
555 ASSERT_FALSE(IsPortAllowedForScheme(7, "http")); | 555 ASSERT_FALSE(IsPortAllowedForScheme(7, "http")); |
556 | 556 |
557 SpdySessionDependencies session_deps( | 557 SpdySessionDependencies session_deps( |
558 GetParam(), ProxyService::CreateDirect()); | 558 GetParam(), ProxyService::CreateDirect()); |
559 scoped_refptr<HttpNetworkSession> session( | 559 scoped_ptr<HttpNetworkSession> session( |
560 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 560 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
561 HttpNetworkSessionPeer peer(session); | 561 HttpNetworkSessionPeer peer(session.get()); |
562 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 562 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
563 new CapturePreconnectsTransportSocketPool( | 563 new CapturePreconnectsTransportSocketPool( |
564 session_deps.host_resolver.get(), | 564 session_deps.host_resolver.get(), |
565 session_deps.cert_verifier.get()); | 565 session_deps.cert_verifier.get()); |
566 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 566 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
567 new MockClientSocketPoolManager); | 567 new MockClientSocketPoolManager); |
568 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); | 568 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); |
569 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 569 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
570 | 570 |
571 PreconnectHelperForURL(1, GURL("http://www.google.com:7"), session.get()); | 571 PreconnectHelperForURL(1, GURL("http://www.google.com:7"), session.get()); |
572 EXPECT_EQ(-1, transport_conn_pool->last_num_streams()); | 572 EXPECT_EQ(-1, transport_conn_pool->last_num_streams()); |
573 } | 573 } |
574 | 574 |
575 TEST_P(HttpStreamFactoryTest, JobNotifiesProxy) { | 575 TEST_P(HttpStreamFactoryTest, JobNotifiesProxy) { |
576 const char* kProxyString = "PROXY bad:99; PROXY maybe:80; DIRECT"; | 576 const char* kProxyString = "PROXY bad:99; PROXY maybe:80; DIRECT"; |
577 SpdySessionDependencies session_deps( | 577 SpdySessionDependencies session_deps( |
578 GetParam(), ProxyService::CreateFixedFromPacResult(kProxyString)); | 578 GetParam(), ProxyService::CreateFixedFromPacResult(kProxyString)); |
579 | 579 |
580 // First connection attempt fails | 580 // First connection attempt fails |
581 StaticSocketDataProvider socket_data1; | 581 StaticSocketDataProvider socket_data1; |
582 socket_data1.set_connect_data(MockConnect(ASYNC, ERR_ADDRESS_UNREACHABLE)); | 582 socket_data1.set_connect_data(MockConnect(ASYNC, ERR_ADDRESS_UNREACHABLE)); |
583 session_deps.socket_factory->AddSocketDataProvider(&socket_data1); | 583 session_deps.socket_factory->AddSocketDataProvider(&socket_data1); |
584 | 584 |
585 // Second connection attempt succeeds | 585 // Second connection attempt succeeds |
586 StaticSocketDataProvider socket_data2; | 586 StaticSocketDataProvider socket_data2; |
587 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); | 587 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); |
588 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); | 588 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); |
589 | 589 |
590 scoped_refptr<HttpNetworkSession> session( | 590 scoped_ptr<HttpNetworkSession> session( |
591 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 591 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
592 | 592 |
593 // Now request a stream. It should succeed using the second proxy in the | 593 // Now request a stream. It should succeed using the second proxy in the |
594 // list. | 594 // list. |
595 HttpRequestInfo request_info; | 595 HttpRequestInfo request_info; |
596 request_info.method = "GET"; | 596 request_info.method = "GET"; |
597 request_info.url = GURL("http://www.google.com"); | 597 request_info.url = GURL("http://www.google.com"); |
598 | 598 |
599 SSLConfig ssl_config; | 599 SSLConfig ssl_config; |
600 StreamRequestWaiter waiter; | 600 StreamRequestWaiter waiter; |
(...skipping 29 matching lines...) Expand all Loading... |
630 MockClientSocketFactory socket_factory; | 630 MockClientSocketFactory socket_factory; |
631 params.client_socket_factory = &socket_factory; | 631 params.client_socket_factory = &socket_factory; |
632 MockHostResolver host_resolver; | 632 MockHostResolver host_resolver; |
633 params.host_resolver = &host_resolver; | 633 params.host_resolver = &host_resolver; |
634 TransportSecurityState transport_security_state; | 634 TransportSecurityState transport_security_state; |
635 params.transport_security_state = &transport_security_state; | 635 params.transport_security_state = &transport_security_state; |
636 params.proxy_service = proxy_service.get(); | 636 params.proxy_service = proxy_service.get(); |
637 params.ssl_config_service = ssl_config_service.get(); | 637 params.ssl_config_service = ssl_config_service.get(); |
638 params.http_server_properties = http_server_properties.GetWeakPtr(); | 638 params.http_server_properties = http_server_properties.GetWeakPtr(); |
639 | 639 |
640 scoped_refptr<HttpNetworkSession> session; | 640 scoped_ptr<HttpNetworkSession> session(new HttpNetworkSession(params)); |
641 session = new HttpNetworkSession(params); | |
642 session->quic_stream_factory()->set_require_confirmation(false); | 641 session->quic_stream_factory()->set_require_confirmation(false); |
643 | 642 |
644 StaticSocketDataProvider socket_data1; | 643 StaticSocketDataProvider socket_data1; |
645 socket_data1.set_connect_data(MockConnect(ASYNC, mock_error)); | 644 socket_data1.set_connect_data(MockConnect(ASYNC, mock_error)); |
646 socket_factory.AddSocketDataProvider(&socket_data1); | 645 socket_factory.AddSocketDataProvider(&socket_data1); |
647 | 646 |
648 // Second connection attempt succeeds. | 647 // Second connection attempt succeeds. |
649 StaticSocketDataProvider socket_data2; | 648 StaticSocketDataProvider socket_data2; |
650 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); | 649 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); |
651 socket_factory.AddSocketDataProvider(&socket_data2); | 650 socket_factory.AddSocketDataProvider(&socket_data2); |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
693 params.client_socket_factory = &socket_factory; | 692 params.client_socket_factory = &socket_factory; |
694 MockHostResolver host_resolver; | 693 MockHostResolver host_resolver; |
695 params.host_resolver = &host_resolver; | 694 params.host_resolver = &host_resolver; |
696 TransportSecurityState transport_security_state; | 695 TransportSecurityState transport_security_state; |
697 params.transport_security_state = &transport_security_state; | 696 params.transport_security_state = &transport_security_state; |
698 params.proxy_service = proxy_service.get(); | 697 params.proxy_service = proxy_service.get(); |
699 params.ssl_config_service = ssl_config_service.get(); | 698 params.ssl_config_service = ssl_config_service.get(); |
700 params.http_server_properties = http_server_properties.GetWeakPtr(); | 699 params.http_server_properties = http_server_properties.GetWeakPtr(); |
701 params.quic_max_number_of_lossy_connections = 2; | 700 params.quic_max_number_of_lossy_connections = 2; |
702 | 701 |
703 scoped_refptr<HttpNetworkSession> session; | 702 scoped_ptr<HttpNetworkSession> session(new HttpNetworkSession(params)); |
704 session = new HttpNetworkSession(params); | |
705 session->quic_stream_factory()->set_require_confirmation(false); | 703 session->quic_stream_factory()->set_require_confirmation(false); |
706 | 704 |
707 session->quic_stream_factory()->number_of_lossy_connections_[99] = | 705 session->quic_stream_factory()->number_of_lossy_connections_[99] = |
708 params.quic_max_number_of_lossy_connections; | 706 params.quic_max_number_of_lossy_connections; |
709 | 707 |
710 StaticSocketDataProvider socket_data2; | 708 StaticSocketDataProvider socket_data2; |
711 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); | 709 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); |
712 socket_factory.AddSocketDataProvider(&socket_data2); | 710 socket_factory.AddSocketDataProvider(&socket_data2); |
713 | 711 |
714 // Now request a stream. It should succeed using the second proxy in the | 712 // Now request a stream. It should succeed using the second proxy in the |
(...skipping 26 matching lines...) Expand all Loading... |
741 SpdySessionDependencies session_deps( | 739 SpdySessionDependencies session_deps( |
742 GetParam(), ProxyService::CreateDirect()); | 740 GetParam(), ProxyService::CreateDirect()); |
743 | 741 |
744 StaticSocketDataProvider socket_data; | 742 StaticSocketDataProvider socket_data; |
745 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 743 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
746 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 744 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
747 | 745 |
748 SSLSocketDataProvider ssl(ASYNC, OK); | 746 SSLSocketDataProvider ssl(ASYNC, OK); |
749 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); | 747 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); |
750 | 748 |
751 scoped_refptr<HttpNetworkSession> session( | 749 scoped_ptr<HttpNetworkSession> session( |
752 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 750 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
753 | 751 |
754 // Set an existing SpdySession in the pool. | 752 // Set an existing SpdySession in the pool. |
755 HostPortPair host_port_pair("www.google.com", 443); | 753 HostPortPair host_port_pair("www.google.com", 443); |
756 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), | 754 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), |
757 PRIVACY_MODE_ENABLED); | 755 PRIVACY_MODE_ENABLED); |
758 | 756 |
759 HttpRequestInfo request_info; | 757 HttpRequestInfo request_info; |
760 request_info.method = "GET"; | 758 request_info.method = "GET"; |
761 request_info.url = GURL("https://www.google.com"); | 759 request_info.url = GURL("https://www.google.com"); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
795 SpdySessionDependencies session_deps( | 793 SpdySessionDependencies session_deps( |
796 GetParam(), ProxyService::CreateDirect()); | 794 GetParam(), ProxyService::CreateDirect()); |
797 | 795 |
798 StaticSocketDataProvider socket_data; | 796 StaticSocketDataProvider socket_data; |
799 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 797 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
800 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 798 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
801 | 799 |
802 SSLSocketDataProvider ssl(ASYNC, OK); | 800 SSLSocketDataProvider ssl(ASYNC, OK); |
803 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); | 801 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); |
804 | 802 |
805 scoped_refptr<HttpNetworkSession> session( | 803 scoped_ptr<HttpNetworkSession> session( |
806 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 804 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
807 SSLClientSocketPool* ssl_pool = session->GetSSLSocketPool( | 805 SSLClientSocketPool* ssl_pool = session->GetSSLSocketPool( |
808 HttpNetworkSession::NORMAL_SOCKET_POOL); | 806 HttpNetworkSession::NORMAL_SOCKET_POOL); |
809 | 807 |
810 EXPECT_EQ(GetSocketPoolGroupCount(ssl_pool), 0); | 808 EXPECT_EQ(GetSocketPoolGroupCount(ssl_pool), 0); |
811 | 809 |
812 HttpRequestInfo request_info; | 810 HttpRequestInfo request_info; |
813 request_info.method = "GET"; | 811 request_info.method = "GET"; |
814 request_info.url = GURL("https://www.google.com"); | 812 request_info.url = GURL("https://www.google.com"); |
815 request_info.load_flags = 0; | 813 request_info.load_flags = 0; |
(...skipping 29 matching lines...) Expand all Loading... |
845 } | 843 } |
846 | 844 |
847 TEST_P(HttpStreamFactoryTest, GetLoadState) { | 845 TEST_P(HttpStreamFactoryTest, GetLoadState) { |
848 SpdySessionDependencies session_deps( | 846 SpdySessionDependencies session_deps( |
849 GetParam(), ProxyService::CreateDirect()); | 847 GetParam(), ProxyService::CreateDirect()); |
850 | 848 |
851 StaticSocketDataProvider socket_data; | 849 StaticSocketDataProvider socket_data; |
852 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 850 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
853 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 851 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
854 | 852 |
855 scoped_refptr<HttpNetworkSession> session( | 853 scoped_ptr<HttpNetworkSession> session( |
856 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 854 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
857 | 855 |
858 HttpRequestInfo request_info; | 856 HttpRequestInfo request_info; |
859 request_info.method = "GET"; | 857 request_info.method = "GET"; |
860 request_info.url = GURL("http://www.google.com"); | 858 request_info.url = GURL("http://www.google.com"); |
861 | 859 |
862 SSLConfig ssl_config; | 860 SSLConfig ssl_config; |
863 StreamRequestWaiter waiter; | 861 StreamRequestWaiter waiter; |
864 scoped_ptr<HttpStreamRequest> request( | 862 scoped_ptr<HttpStreamRequest> request( |
865 session->http_stream_factory()->RequestStream( | 863 session->http_stream_factory()->RequestStream( |
866 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, | 864 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, |
867 &waiter, BoundNetLog())); | 865 &waiter, BoundNetLog())); |
868 | 866 |
869 EXPECT_EQ(LOAD_STATE_RESOLVING_HOST, request->GetLoadState()); | 867 EXPECT_EQ(LOAD_STATE_RESOLVING_HOST, request->GetLoadState()); |
870 | 868 |
871 waiter.WaitForStream(); | 869 waiter.WaitForStream(); |
872 } | 870 } |
873 | 871 |
874 TEST_P(HttpStreamFactoryTest, RequestHttpStream) { | 872 TEST_P(HttpStreamFactoryTest, RequestHttpStream) { |
875 SpdySessionDependencies session_deps( | 873 SpdySessionDependencies session_deps( |
876 GetParam(), ProxyService::CreateDirect()); | 874 GetParam(), ProxyService::CreateDirect()); |
877 | 875 |
878 StaticSocketDataProvider socket_data; | 876 StaticSocketDataProvider socket_data; |
879 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 877 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
880 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 878 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
881 | 879 |
882 scoped_refptr<HttpNetworkSession> session( | 880 scoped_ptr<HttpNetworkSession> session( |
883 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 881 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
884 | 882 |
885 // Now request a stream. It should succeed using the second proxy in the | 883 // Now request a stream. It should succeed using the second proxy in the |
886 // list. | 884 // list. |
887 HttpRequestInfo request_info; | 885 HttpRequestInfo request_info; |
888 request_info.method = "GET"; | 886 request_info.method = "GET"; |
889 request_info.url = GURL("http://www.google.com"); | 887 request_info.url = GURL("http://www.google.com"); |
890 request_info.load_flags = 0; | 888 request_info.load_flags = 0; |
891 | 889 |
892 SSLConfig ssl_config; | 890 SSLConfig ssl_config; |
(...skipping 29 matching lines...) Expand all Loading... |
922 GetParam(), ProxyService::CreateDirect()); | 920 GetParam(), ProxyService::CreateDirect()); |
923 | 921 |
924 MockRead mock_read(ASYNC, OK); | 922 MockRead mock_read(ASYNC, OK); |
925 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 923 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
926 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 924 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
927 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 925 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
928 | 926 |
929 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 927 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
930 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 928 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
931 | 929 |
932 scoped_refptr<HttpNetworkSession> session( | 930 scoped_ptr<HttpNetworkSession> session( |
933 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 931 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
934 | 932 |
935 // Now request a stream. | 933 // Now request a stream. |
936 HttpRequestInfo request_info; | 934 HttpRequestInfo request_info; |
937 request_info.method = "GET"; | 935 request_info.method = "GET"; |
938 request_info.url = GURL("https://www.google.com"); | 936 request_info.url = GURL("https://www.google.com"); |
939 request_info.load_flags = 0; | 937 request_info.load_flags = 0; |
940 | 938 |
941 SSLConfig ssl_config; | 939 SSLConfig ssl_config; |
942 StreamRequestWaiter waiter; | 940 StreamRequestWaiter waiter; |
(...skipping 23 matching lines...) Expand all Loading... |
966 } | 964 } |
967 | 965 |
968 TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverProxy) { | 966 TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverProxy) { |
969 SpdySessionDependencies session_deps( | 967 SpdySessionDependencies session_deps( |
970 GetParam(), ProxyService::CreateFixed("myproxy:8888")); | 968 GetParam(), ProxyService::CreateFixed("myproxy:8888")); |
971 | 969 |
972 StaticSocketDataProvider socket_data; | 970 StaticSocketDataProvider socket_data; |
973 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 971 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
974 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 972 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
975 | 973 |
976 scoped_refptr<HttpNetworkSession> session( | 974 scoped_ptr<HttpNetworkSession> session( |
977 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 975 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
978 | 976 |
979 // Now request a stream. It should succeed using the second proxy in the | 977 // Now request a stream. It should succeed using the second proxy in the |
980 // list. | 978 // list. |
981 HttpRequestInfo request_info; | 979 HttpRequestInfo request_info; |
982 request_info.method = "GET"; | 980 request_info.method = "GET"; |
983 request_info.url = GURL("http://www.google.com"); | 981 request_info.url = GURL("http://www.google.com"); |
984 request_info.load_flags = 0; | 982 request_info.load_flags = 0; |
985 | 983 |
986 SSLConfig ssl_config; | 984 SSLConfig ssl_config; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1018 } | 1016 } |
1019 | 1017 |
1020 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStream) { | 1018 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStream) { |
1021 SpdySessionDependencies session_deps( | 1019 SpdySessionDependencies session_deps( |
1022 GetParam(), ProxyService::CreateDirect()); | 1020 GetParam(), ProxyService::CreateDirect()); |
1023 | 1021 |
1024 StaticSocketDataProvider socket_data; | 1022 StaticSocketDataProvider socket_data; |
1025 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1023 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1026 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1024 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1027 | 1025 |
1028 scoped_refptr<HttpNetworkSession> session( | 1026 scoped_ptr<HttpNetworkSession> session( |
1029 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1027 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1030 | 1028 |
1031 // Now request a stream. | 1029 // Now request a stream. |
1032 HttpRequestInfo request_info; | 1030 HttpRequestInfo request_info; |
1033 request_info.method = "GET"; | 1031 request_info.method = "GET"; |
1034 request_info.url = GURL("ws://www.google.com"); | 1032 request_info.url = GURL("ws://www.google.com"); |
1035 request_info.load_flags = 0; | 1033 request_info.load_flags = 0; |
1036 | 1034 |
1037 SSLConfig ssl_config; | 1035 SSLConfig ssl_config; |
1038 StreamRequestWaiter waiter; | 1036 StreamRequestWaiter waiter; |
(...skipping 27 matching lines...) Expand all Loading... |
1066 GetParam(), ProxyService::CreateDirect()); | 1064 GetParam(), ProxyService::CreateDirect()); |
1067 | 1065 |
1068 MockRead mock_read(ASYNC, OK); | 1066 MockRead mock_read(ASYNC, OK); |
1069 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1067 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
1070 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1068 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1071 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1069 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1072 | 1070 |
1073 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1071 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
1074 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1072 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
1075 | 1073 |
1076 scoped_refptr<HttpNetworkSession> session( | 1074 scoped_ptr<HttpNetworkSession> session( |
1077 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1075 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1078 | 1076 |
1079 // Now request a stream. | 1077 // Now request a stream. |
1080 HttpRequestInfo request_info; | 1078 HttpRequestInfo request_info; |
1081 request_info.method = "GET"; | 1079 request_info.method = "GET"; |
1082 request_info.url = GURL("wss://www.google.com"); | 1080 request_info.url = GURL("wss://www.google.com"); |
1083 request_info.load_flags = 0; | 1081 request_info.load_flags = 0; |
1084 | 1082 |
1085 SSLConfig ssl_config; | 1083 SSLConfig ssl_config; |
1086 StreamRequestWaiter waiter; | 1084 StreamRequestWaiter waiter; |
(...skipping 24 matching lines...) Expand all Loading... |
1111 | 1109 |
1112 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverProxy) { | 1110 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverProxy) { |
1113 SpdySessionDependencies session_deps( | 1111 SpdySessionDependencies session_deps( |
1114 GetParam(), ProxyService::CreateFixed("myproxy:8888")); | 1112 GetParam(), ProxyService::CreateFixed("myproxy:8888")); |
1115 | 1113 |
1116 MockRead read(SYNCHRONOUS, "HTTP/1.0 200 Connection established\r\n\r\n"); | 1114 MockRead read(SYNCHRONOUS, "HTTP/1.0 200 Connection established\r\n\r\n"); |
1117 StaticSocketDataProvider socket_data(&read, 1, 0, 0); | 1115 StaticSocketDataProvider socket_data(&read, 1, 0, 0); |
1118 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1116 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1119 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1117 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1120 | 1118 |
1121 scoped_refptr<HttpNetworkSession> session( | 1119 scoped_ptr<HttpNetworkSession> session( |
1122 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1120 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1123 | 1121 |
1124 // Now request a stream. | 1122 // Now request a stream. |
1125 HttpRequestInfo request_info; | 1123 HttpRequestInfo request_info; |
1126 request_info.method = "GET"; | 1124 request_info.method = "GET"; |
1127 request_info.url = GURL("ws://www.google.com"); | 1125 request_info.url = GURL("ws://www.google.com"); |
1128 request_info.load_flags = 0; | 1126 request_info.load_flags = 0; |
1129 | 1127 |
1130 SSLConfig ssl_config; | 1128 SSLConfig ssl_config; |
1131 StreamRequestWaiter waiter; | 1129 StreamRequestWaiter waiter; |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1172 MockRead mock_read(ASYNC, OK); | 1170 MockRead mock_read(ASYNC, OK); |
1173 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); | 1171 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); |
1174 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1172 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1175 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1173 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1176 | 1174 |
1177 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1175 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
1178 ssl_socket_data.SetNextProto(GetParam()); | 1176 ssl_socket_data.SetNextProto(GetParam()); |
1179 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1177 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
1180 | 1178 |
1181 HostPortPair host_port_pair("www.google.com", 443); | 1179 HostPortPair host_port_pair("www.google.com", 443); |
1182 scoped_refptr<HttpNetworkSession> session( | 1180 scoped_ptr<HttpNetworkSession> session( |
1183 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1181 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1184 | 1182 |
1185 // Now request a stream. | 1183 // Now request a stream. |
1186 HttpRequestInfo request_info; | 1184 HttpRequestInfo request_info; |
1187 request_info.method = "GET"; | 1185 request_info.method = "GET"; |
1188 request_info.url = GURL("https://www.google.com"); | 1186 request_info.url = GURL("https://www.google.com"); |
1189 request_info.load_flags = 0; | 1187 request_info.load_flags = 0; |
1190 | 1188 |
1191 SSLConfig ssl_config; | 1189 SSLConfig ssl_config; |
1192 StreamRequestWaiter waiter; | 1190 StreamRequestWaiter waiter; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1224 | 1222 |
1225 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); | 1223 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); |
1226 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1224 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
1227 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1225 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1228 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1226 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1229 | 1227 |
1230 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1228 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
1231 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1229 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
1232 | 1230 |
1233 HostPortPair host_port_pair("www.google.com", 80); | 1231 HostPortPair host_port_pair("www.google.com", 80); |
1234 scoped_refptr<HttpNetworkSession> | 1232 scoped_ptr<HttpNetworkSession> session( |
1235 session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1233 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1236 | 1234 |
1237 // Now request a stream. | 1235 // Now request a stream. |
1238 HttpRequestInfo request_info; | 1236 HttpRequestInfo request_info; |
1239 request_info.method = "GET"; | 1237 request_info.method = "GET"; |
1240 request_info.url = GURL("wss://www.google.com"); | 1238 request_info.url = GURL("wss://www.google.com"); |
1241 request_info.load_flags = 0; | 1239 request_info.load_flags = 0; |
1242 | 1240 |
1243 SSLConfig ssl_config; | 1241 SSLConfig ssl_config; |
1244 StreamRequestWaiter waiter1; | 1242 StreamRequestWaiter waiter1; |
1245 WebSocketStreamCreateHelper create_helper; | 1243 WebSocketStreamCreateHelper create_helper; |
(...skipping 30 matching lines...) Expand all Loading... |
1276 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); | 1274 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); |
1277 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1275 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
1278 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1276 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
1279 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1277 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
1280 | 1278 |
1281 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1279 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
1282 ssl_socket_data.SetNextProto(GetParam()); | 1280 ssl_socket_data.SetNextProto(GetParam()); |
1283 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1281 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
1284 | 1282 |
1285 HostPortPair host_port_pair("www.google.com", 80); | 1283 HostPortPair host_port_pair("www.google.com", 80); |
1286 scoped_refptr<HttpNetworkSession> | 1284 scoped_ptr<HttpNetworkSession> session( |
1287 session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1285 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1288 | 1286 |
1289 // Now request a stream. | 1287 // Now request a stream. |
1290 HttpRequestInfo request_info; | 1288 HttpRequestInfo request_info; |
1291 request_info.method = "GET"; | 1289 request_info.method = "GET"; |
1292 request_info.url = GURL("wss://www.google.com"); | 1290 request_info.url = GURL("wss://www.google.com"); |
1293 request_info.load_flags = 0; | 1291 request_info.load_flags = 0; |
1294 | 1292 |
1295 SSLConfig ssl_config; | 1293 SSLConfig ssl_config; |
1296 StreamRequestWaiter waiter1; | 1294 StreamRequestWaiter waiter1; |
1297 WebSocketStreamCreateHelper create_helper; | 1295 WebSocketStreamCreateHelper create_helper; |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1358 | 1356 |
1359 MockRead mock_read2(ASYNC, OK); | 1357 MockRead mock_read2(ASYNC, OK); |
1360 SequencedSocketData socket_data2(&mock_read2, 1, nullptr, 0); | 1358 SequencedSocketData socket_data2(&mock_read2, 1, nullptr, 0); |
1361 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); | 1359 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); |
1362 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); | 1360 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); |
1363 | 1361 |
1364 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1362 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
1365 ssl_socket_data.SetNextProto(GetParam()); | 1363 ssl_socket_data.SetNextProto(GetParam()); |
1366 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1364 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
1367 | 1365 |
1368 scoped_refptr<HttpNetworkSession> session( | 1366 scoped_ptr<HttpNetworkSession> session( |
1369 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1367 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
1370 | 1368 |
1371 // Now request a stream. | 1369 // Now request a stream. |
1372 HttpRequestInfo request_info; | 1370 HttpRequestInfo request_info; |
1373 request_info.method = "GET"; | 1371 request_info.method = "GET"; |
1374 request_info.url = GURL("ws://www.google.com:8888"); | 1372 request_info.url = GURL("ws://www.google.com:8888"); |
1375 request_info.load_flags = 0; | 1373 request_info.load_flags = 0; |
1376 | 1374 |
1377 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 1375 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
1378 session->http_server_properties()->SetAlternativeService( | 1376 session->http_server_properties()->SetAlternativeService( |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1412 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); | 1410 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); |
1413 | 1411 |
1414 // Make sure there is no orphaned job. it is already canceled. | 1412 // Make sure there is no orphaned job. it is already canceled. |
1415 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( | 1413 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( |
1416 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); | 1414 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); |
1417 } | 1415 } |
1418 | 1416 |
1419 } // namespace | 1417 } // namespace |
1420 | 1418 |
1421 } // namespace net | 1419 } // namespace net |
OLD | NEW |