| 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 <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 | 424 |
| 425 INSTANTIATE_TEST_CASE_P(NextProto, | 425 INSTANTIATE_TEST_CASE_P(NextProto, |
| 426 HttpStreamFactoryTest, | 426 HttpStreamFactoryTest, |
| 427 testing::Values(kProtoSPDY31, | 427 testing::Values(kProtoSPDY31, |
| 428 kProtoHTTP2)); | 428 kProtoHTTP2)); |
| 429 | 429 |
| 430 TEST_P(HttpStreamFactoryTest, PreconnectDirect) { | 430 TEST_P(HttpStreamFactoryTest, PreconnectDirect) { |
| 431 for (size_t i = 0; i < arraysize(kTests); ++i) { | 431 for (size_t i = 0; i < arraysize(kTests); ++i) { |
| 432 SpdySessionDependencies session_deps( | 432 SpdySessionDependencies session_deps( |
| 433 GetParam(), ProxyService::CreateDirect()); | 433 GetParam(), ProxyService::CreateDirect()); |
| 434 scoped_refptr<HttpNetworkSession> session( | 434 scoped_ptr<HttpNetworkSession> session( |
| 435 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 435 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 436 HttpNetworkSessionPeer peer(session); | 436 HttpNetworkSessionPeer peer(session.get()); |
| 437 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 437 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
| 438 new CapturePreconnectsTransportSocketPool( | 438 new CapturePreconnectsTransportSocketPool( |
| 439 session_deps.host_resolver.get(), | 439 session_deps.host_resolver.get(), |
| 440 session_deps.cert_verifier.get()); | 440 session_deps.cert_verifier.get()); |
| 441 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 441 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
| 442 new CapturePreconnectsSSLSocketPool( | 442 new CapturePreconnectsSSLSocketPool( |
| 443 session_deps.host_resolver.get(), | 443 session_deps.host_resolver.get(), |
| 444 session_deps.cert_verifier.get()); | 444 session_deps.cert_verifier.get()); |
| 445 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 445 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
| 446 new MockClientSocketPoolManager); | 446 new MockClientSocketPoolManager); |
| 447 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); | 447 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); |
| 448 mock_pool_manager->SetSSLSocketPool(ssl_conn_pool); | 448 mock_pool_manager->SetSSLSocketPool(ssl_conn_pool); |
| 449 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 449 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
| 450 PreconnectHelper(kTests[i], session.get()); | 450 PreconnectHelper(kTests[i], session.get()); |
| 451 if (kTests[i].ssl) | 451 if (kTests[i].ssl) |
| 452 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 452 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
| 453 else | 453 else |
| 454 EXPECT_EQ(kTests[i].num_streams, transport_conn_pool->last_num_streams()); | 454 EXPECT_EQ(kTests[i].num_streams, transport_conn_pool->last_num_streams()); |
| 455 } | 455 } |
| 456 } | 456 } |
| 457 | 457 |
| 458 TEST_P(HttpStreamFactoryTest, PreconnectHttpProxy) { | 458 TEST_P(HttpStreamFactoryTest, PreconnectHttpProxy) { |
| 459 for (size_t i = 0; i < arraysize(kTests); ++i) { | 459 for (size_t i = 0; i < arraysize(kTests); ++i) { |
| 460 SpdySessionDependencies session_deps( | 460 SpdySessionDependencies session_deps( |
| 461 GetParam(), ProxyService::CreateFixed("http_proxy")); | 461 GetParam(), ProxyService::CreateFixed("http_proxy")); |
| 462 scoped_refptr<HttpNetworkSession> session( | 462 scoped_ptr<HttpNetworkSession> session( |
| 463 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 463 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 464 HttpNetworkSessionPeer peer(session); | 464 HttpNetworkSessionPeer peer(session.get()); |
| 465 HostPortPair proxy_host("http_proxy", 80); | 465 HostPortPair proxy_host("http_proxy", 80); |
| 466 CapturePreconnectsHttpProxySocketPool* http_proxy_pool = | 466 CapturePreconnectsHttpProxySocketPool* http_proxy_pool = |
| 467 new CapturePreconnectsHttpProxySocketPool( | 467 new CapturePreconnectsHttpProxySocketPool( |
| 468 session_deps.host_resolver.get(), | 468 session_deps.host_resolver.get(), |
| 469 session_deps.cert_verifier.get()); | 469 session_deps.cert_verifier.get()); |
| 470 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 470 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
| 471 new CapturePreconnectsSSLSocketPool( | 471 new CapturePreconnectsSSLSocketPool( |
| 472 session_deps.host_resolver.get(), | 472 session_deps.host_resolver.get(), |
| 473 session_deps.cert_verifier.get()); | 473 session_deps.cert_verifier.get()); |
| 474 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 474 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
| 475 new MockClientSocketPoolManager); | 475 new MockClientSocketPoolManager); |
| 476 mock_pool_manager->SetSocketPoolForHTTPProxy(proxy_host, http_proxy_pool); | 476 mock_pool_manager->SetSocketPoolForHTTPProxy(proxy_host, http_proxy_pool); |
| 477 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); | 477 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); |
| 478 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 478 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
| 479 PreconnectHelper(kTests[i], session.get()); | 479 PreconnectHelper(kTests[i], session.get()); |
| 480 if (kTests[i].ssl) | 480 if (kTests[i].ssl) |
| 481 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 481 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
| 482 else | 482 else |
| 483 EXPECT_EQ(kTests[i].num_streams, http_proxy_pool->last_num_streams()); | 483 EXPECT_EQ(kTests[i].num_streams, http_proxy_pool->last_num_streams()); |
| 484 } | 484 } |
| 485 } | 485 } |
| 486 | 486 |
| 487 TEST_P(HttpStreamFactoryTest, PreconnectSocksProxy) { | 487 TEST_P(HttpStreamFactoryTest, PreconnectSocksProxy) { |
| 488 for (size_t i = 0; i < arraysize(kTests); ++i) { | 488 for (size_t i = 0; i < arraysize(kTests); ++i) { |
| 489 SpdySessionDependencies session_deps( | 489 SpdySessionDependencies session_deps( |
| 490 GetParam(), ProxyService::CreateFixed("socks4://socks_proxy:1080")); | 490 GetParam(), ProxyService::CreateFixed("socks4://socks_proxy:1080")); |
| 491 scoped_refptr<HttpNetworkSession> session( | 491 scoped_ptr<HttpNetworkSession> session( |
| 492 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 492 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 493 HttpNetworkSessionPeer peer(session); | 493 HttpNetworkSessionPeer peer(session.get()); |
| 494 HostPortPair proxy_host("socks_proxy", 1080); | 494 HostPortPair proxy_host("socks_proxy", 1080); |
| 495 CapturePreconnectsSOCKSSocketPool* socks_proxy_pool = | 495 CapturePreconnectsSOCKSSocketPool* socks_proxy_pool = |
| 496 new CapturePreconnectsSOCKSSocketPool( | 496 new CapturePreconnectsSOCKSSocketPool( |
| 497 session_deps.host_resolver.get(), | 497 session_deps.host_resolver.get(), |
| 498 session_deps.cert_verifier.get()); | 498 session_deps.cert_verifier.get()); |
| 499 CapturePreconnectsSSLSocketPool* ssl_conn_pool = | 499 CapturePreconnectsSSLSocketPool* ssl_conn_pool = |
| 500 new CapturePreconnectsSSLSocketPool( | 500 new CapturePreconnectsSSLSocketPool( |
| 501 session_deps.host_resolver.get(), | 501 session_deps.host_resolver.get(), |
| 502 session_deps.cert_verifier.get()); | 502 session_deps.cert_verifier.get()); |
| 503 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 503 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
| 504 new MockClientSocketPoolManager); | 504 new MockClientSocketPoolManager); |
| 505 mock_pool_manager->SetSocketPoolForSOCKSProxy(proxy_host, socks_proxy_pool); | 505 mock_pool_manager->SetSocketPoolForSOCKSProxy(proxy_host, socks_proxy_pool); |
| 506 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); | 506 mock_pool_manager->SetSocketPoolForSSLWithProxy(proxy_host, ssl_conn_pool); |
| 507 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 507 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
| 508 PreconnectHelper(kTests[i], session.get()); | 508 PreconnectHelper(kTests[i], session.get()); |
| 509 if (kTests[i].ssl) | 509 if (kTests[i].ssl) |
| 510 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); | 510 EXPECT_EQ(kTests[i].num_streams, ssl_conn_pool->last_num_streams()); |
| 511 else | 511 else |
| 512 EXPECT_EQ(kTests[i].num_streams, socks_proxy_pool->last_num_streams()); | 512 EXPECT_EQ(kTests[i].num_streams, socks_proxy_pool->last_num_streams()); |
| 513 } | 513 } |
| 514 } | 514 } |
| 515 | 515 |
| 516 TEST_P(HttpStreamFactoryTest, PreconnectDirectWithExistingSpdySession) { | 516 TEST_P(HttpStreamFactoryTest, PreconnectDirectWithExistingSpdySession) { |
| 517 for (size_t i = 0; i < arraysize(kTests); ++i) { | 517 for (size_t i = 0; i < arraysize(kTests); ++i) { |
| 518 SpdySessionDependencies session_deps( | 518 SpdySessionDependencies session_deps( |
| 519 GetParam(), ProxyService::CreateDirect()); | 519 GetParam(), ProxyService::CreateDirect()); |
| 520 scoped_refptr<HttpNetworkSession> session( | 520 scoped_ptr<HttpNetworkSession> session( |
| 521 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 521 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 522 HttpNetworkSessionPeer peer(session); | 522 HttpNetworkSessionPeer peer(session.get()); |
| 523 | 523 |
| 524 // Put a SpdySession in the pool. | 524 // Put a SpdySession in the pool. |
| 525 HostPortPair host_port_pair("www.google.com", 443); | 525 HostPortPair host_port_pair("www.google.com", 443); |
| 526 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), | 526 SpdySessionKey key(host_port_pair, ProxyServer::Direct(), |
| 527 PRIVACY_MODE_DISABLED); | 527 PRIVACY_MODE_DISABLED); |
| 528 ignore_result(CreateFakeSpdySession(session->spdy_session_pool(), key)); | 528 ignore_result(CreateFakeSpdySession(session->spdy_session_pool(), key)); |
| 529 | 529 |
| 530 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 530 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
| 531 new CapturePreconnectsTransportSocketPool( | 531 new CapturePreconnectsTransportSocketPool( |
| 532 session_deps.host_resolver.get(), | 532 session_deps.host_resolver.get(), |
| (...skipping 18 matching lines...) Expand all Loading... |
| 551 } | 551 } |
| 552 } | 552 } |
| 553 | 553 |
| 554 // Verify that preconnects to unsafe ports are cancelled before they reach | 554 // Verify that preconnects to unsafe ports are cancelled before they reach |
| 555 // the SocketPool. | 555 // the SocketPool. |
| 556 TEST_P(HttpStreamFactoryTest, PreconnectUnsafePort) { | 556 TEST_P(HttpStreamFactoryTest, PreconnectUnsafePort) { |
| 557 ASSERT_FALSE(IsPortAllowedForScheme(7, "http")); | 557 ASSERT_FALSE(IsPortAllowedForScheme(7, "http")); |
| 558 | 558 |
| 559 SpdySessionDependencies session_deps( | 559 SpdySessionDependencies session_deps( |
| 560 GetParam(), ProxyService::CreateDirect()); | 560 GetParam(), ProxyService::CreateDirect()); |
| 561 scoped_refptr<HttpNetworkSession> session( | 561 scoped_ptr<HttpNetworkSession> session( |
| 562 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 562 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 563 HttpNetworkSessionPeer peer(session); | 563 HttpNetworkSessionPeer peer(session.get()); |
| 564 CapturePreconnectsTransportSocketPool* transport_conn_pool = | 564 CapturePreconnectsTransportSocketPool* transport_conn_pool = |
| 565 new CapturePreconnectsTransportSocketPool( | 565 new CapturePreconnectsTransportSocketPool( |
| 566 session_deps.host_resolver.get(), | 566 session_deps.host_resolver.get(), |
| 567 session_deps.cert_verifier.get()); | 567 session_deps.cert_verifier.get()); |
| 568 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 568 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
| 569 new MockClientSocketPoolManager); | 569 new MockClientSocketPoolManager); |
| 570 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); | 570 mock_pool_manager->SetTransportSocketPool(transport_conn_pool); |
| 571 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); | 571 peer.SetClientSocketPoolManager(mock_pool_manager.Pass()); |
| 572 | 572 |
| 573 PreconnectHelperForURL(1, GURL("http://www.google.com:7"), session.get()); | 573 PreconnectHelperForURL(1, GURL("http://www.google.com:7"), session.get()); |
| 574 EXPECT_EQ(-1, transport_conn_pool->last_num_streams()); | 574 EXPECT_EQ(-1, transport_conn_pool->last_num_streams()); |
| 575 } | 575 } |
| 576 | 576 |
| 577 TEST_P(HttpStreamFactoryTest, JobNotifiesProxy) { | 577 TEST_P(HttpStreamFactoryTest, JobNotifiesProxy) { |
| 578 const char* kProxyString = "PROXY bad:99; PROXY maybe:80; DIRECT"; | 578 const char* kProxyString = "PROXY bad:99; PROXY maybe:80; DIRECT"; |
| 579 SpdySessionDependencies session_deps( | 579 SpdySessionDependencies session_deps( |
| 580 GetParam(), ProxyService::CreateFixedFromPacResult(kProxyString)); | 580 GetParam(), ProxyService::CreateFixedFromPacResult(kProxyString)); |
| 581 | 581 |
| 582 // First connection attempt fails | 582 // First connection attempt fails |
| 583 StaticSocketDataProvider socket_data1; | 583 StaticSocketDataProvider socket_data1; |
| 584 socket_data1.set_connect_data(MockConnect(ASYNC, ERR_ADDRESS_UNREACHABLE)); | 584 socket_data1.set_connect_data(MockConnect(ASYNC, ERR_ADDRESS_UNREACHABLE)); |
| 585 session_deps.socket_factory->AddSocketDataProvider(&socket_data1); | 585 session_deps.socket_factory->AddSocketDataProvider(&socket_data1); |
| 586 | 586 |
| 587 // Second connection attempt succeeds | 587 // Second connection attempt succeeds |
| 588 StaticSocketDataProvider socket_data2; | 588 StaticSocketDataProvider socket_data2; |
| 589 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); | 589 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); |
| 590 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); | 590 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); |
| 591 | 591 |
| 592 scoped_refptr<HttpNetworkSession> session( | 592 scoped_ptr<HttpNetworkSession> session( |
| 593 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 593 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 594 | 594 |
| 595 // Now request a stream. It should succeed using the second proxy in the | 595 // Now request a stream. It should succeed using the second proxy in the |
| 596 // list. | 596 // list. |
| 597 HttpRequestInfo request_info; | 597 HttpRequestInfo request_info; |
| 598 request_info.method = "GET"; | 598 request_info.method = "GET"; |
| 599 request_info.url = GURL("http://www.google.com"); | 599 request_info.url = GURL("http://www.google.com"); |
| 600 | 600 |
| 601 SSLConfig ssl_config; | 601 SSLConfig ssl_config; |
| 602 StreamRequestWaiter waiter; | 602 StreamRequestWaiter waiter; |
| (...skipping 28 matching lines...) Expand all Loading... |
| 631 MockClientSocketFactory socket_factory; | 631 MockClientSocketFactory socket_factory; |
| 632 params.client_socket_factory = &socket_factory; | 632 params.client_socket_factory = &socket_factory; |
| 633 MockHostResolver host_resolver; | 633 MockHostResolver host_resolver; |
| 634 params.host_resolver = &host_resolver; | 634 params.host_resolver = &host_resolver; |
| 635 TransportSecurityState transport_security_state; | 635 TransportSecurityState transport_security_state; |
| 636 params.transport_security_state = &transport_security_state; | 636 params.transport_security_state = &transport_security_state; |
| 637 params.proxy_service = proxy_service.get(); | 637 params.proxy_service = proxy_service.get(); |
| 638 params.ssl_config_service = ssl_config_service.get(); | 638 params.ssl_config_service = ssl_config_service.get(); |
| 639 params.http_server_properties = http_server_properties.GetWeakPtr(); | 639 params.http_server_properties = http_server_properties.GetWeakPtr(); |
| 640 | 640 |
| 641 scoped_refptr<HttpNetworkSession> session; | 641 scoped_ptr<HttpNetworkSession> session(new HttpNetworkSession(params)); |
| 642 session = new HttpNetworkSession(params); | |
| 643 session->quic_stream_factory()->set_require_confirmation(false); | 642 session->quic_stream_factory()->set_require_confirmation(false); |
| 644 | 643 |
| 645 StaticSocketDataProvider socket_data1; | 644 StaticSocketDataProvider socket_data1; |
| 646 socket_data1.set_connect_data(MockConnect(ASYNC, mock_error[i])); | 645 socket_data1.set_connect_data(MockConnect(ASYNC, mock_error[i])); |
| 647 socket_factory.AddSocketDataProvider(&socket_data1); | 646 socket_factory.AddSocketDataProvider(&socket_data1); |
| 648 | 647 |
| 649 // Second connection attempt succeeds. | 648 // Second connection attempt succeeds. |
| 650 StaticSocketDataProvider socket_data2; | 649 StaticSocketDataProvider socket_data2; |
| 651 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); | 650 socket_data2.set_connect_data(MockConnect(ASYNC, OK)); |
| 652 socket_factory.AddSocketDataProvider(&socket_data2); | 651 socket_factory.AddSocketDataProvider(&socket_data2); |
| (...skipping 40 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 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 807 SpdySessionDependencies session_deps( | 805 SpdySessionDependencies session_deps( |
| 808 GetParam(), ProxyService::CreateDirect()); | 806 GetParam(), ProxyService::CreateDirect()); |
| 809 | 807 |
| 810 StaticSocketDataProvider socket_data; | 808 StaticSocketDataProvider socket_data; |
| 811 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 809 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 812 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 810 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 813 | 811 |
| 814 SSLSocketDataProvider ssl(ASYNC, OK); | 812 SSLSocketDataProvider ssl(ASYNC, OK); |
| 815 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); | 813 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); |
| 816 | 814 |
| 817 scoped_refptr<HttpNetworkSession> session( | 815 scoped_ptr<HttpNetworkSession> session( |
| 818 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 816 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 819 SSLClientSocketPool* ssl_pool = session->GetSSLSocketPool( | 817 SSLClientSocketPool* ssl_pool = session->GetSSLSocketPool( |
| 820 HttpNetworkSession::NORMAL_SOCKET_POOL); | 818 HttpNetworkSession::NORMAL_SOCKET_POOL); |
| 821 | 819 |
| 822 EXPECT_EQ(GetSocketPoolGroupCount(ssl_pool), 0); | 820 EXPECT_EQ(GetSocketPoolGroupCount(ssl_pool), 0); |
| 823 | 821 |
| 824 HttpRequestInfo request_info; | 822 HttpRequestInfo request_info; |
| 825 request_info.method = "GET"; | 823 request_info.method = "GET"; |
| 826 request_info.url = GURL("https://www.google.com"); | 824 request_info.url = GURL("https://www.google.com"); |
| 827 request_info.load_flags = 0; | 825 request_info.load_flags = 0; |
| (...skipping 29 matching lines...) Expand all Loading... |
| 857 } | 855 } |
| 858 | 856 |
| 859 TEST_P(HttpStreamFactoryTest, GetLoadState) { | 857 TEST_P(HttpStreamFactoryTest, GetLoadState) { |
| 860 SpdySessionDependencies session_deps( | 858 SpdySessionDependencies session_deps( |
| 861 GetParam(), ProxyService::CreateDirect()); | 859 GetParam(), ProxyService::CreateDirect()); |
| 862 | 860 |
| 863 StaticSocketDataProvider socket_data; | 861 StaticSocketDataProvider socket_data; |
| 864 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 862 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 865 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 863 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 866 | 864 |
| 867 scoped_refptr<HttpNetworkSession> session( | 865 scoped_ptr<HttpNetworkSession> session( |
| 868 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 866 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 869 | 867 |
| 870 HttpRequestInfo request_info; | 868 HttpRequestInfo request_info; |
| 871 request_info.method = "GET"; | 869 request_info.method = "GET"; |
| 872 request_info.url = GURL("http://www.google.com"); | 870 request_info.url = GURL("http://www.google.com"); |
| 873 | 871 |
| 874 SSLConfig ssl_config; | 872 SSLConfig ssl_config; |
| 875 StreamRequestWaiter waiter; | 873 StreamRequestWaiter waiter; |
| 876 scoped_ptr<HttpStreamRequest> request( | 874 scoped_ptr<HttpStreamRequest> request( |
| 877 session->http_stream_factory()->RequestStream( | 875 session->http_stream_factory()->RequestStream( |
| 878 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, | 876 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, |
| 879 &waiter, BoundNetLog())); | 877 &waiter, BoundNetLog())); |
| 880 | 878 |
| 881 EXPECT_EQ(LOAD_STATE_RESOLVING_HOST, request->GetLoadState()); | 879 EXPECT_EQ(LOAD_STATE_RESOLVING_HOST, request->GetLoadState()); |
| 882 | 880 |
| 883 waiter.WaitForStream(); | 881 waiter.WaitForStream(); |
| 884 } | 882 } |
| 885 | 883 |
| 886 TEST_P(HttpStreamFactoryTest, RequestHttpStream) { | 884 TEST_P(HttpStreamFactoryTest, RequestHttpStream) { |
| 887 SpdySessionDependencies session_deps( | 885 SpdySessionDependencies session_deps( |
| 888 GetParam(), ProxyService::CreateDirect()); | 886 GetParam(), ProxyService::CreateDirect()); |
| 889 | 887 |
| 890 StaticSocketDataProvider socket_data; | 888 StaticSocketDataProvider socket_data; |
| 891 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 889 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 892 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 890 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 893 | 891 |
| 894 scoped_refptr<HttpNetworkSession> session( | 892 scoped_ptr<HttpNetworkSession> session( |
| 895 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 893 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 896 | 894 |
| 897 // Now request a stream. It should succeed using the second proxy in the | 895 // Now request a stream. It should succeed using the second proxy in the |
| 898 // list. | 896 // list. |
| 899 HttpRequestInfo request_info; | 897 HttpRequestInfo request_info; |
| 900 request_info.method = "GET"; | 898 request_info.method = "GET"; |
| 901 request_info.url = GURL("http://www.google.com"); | 899 request_info.url = GURL("http://www.google.com"); |
| 902 request_info.load_flags = 0; | 900 request_info.load_flags = 0; |
| 903 | 901 |
| 904 SSLConfig ssl_config; | 902 SSLConfig ssl_config; |
| (...skipping 29 matching lines...) Expand all Loading... |
| 934 GetParam(), ProxyService::CreateDirect()); | 932 GetParam(), ProxyService::CreateDirect()); |
| 935 | 933 |
| 936 MockRead mock_read(ASYNC, OK); | 934 MockRead mock_read(ASYNC, OK); |
| 937 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 935 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
| 938 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 936 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 939 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 937 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 940 | 938 |
| 941 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 939 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 942 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 940 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 943 | 941 |
| 944 scoped_refptr<HttpNetworkSession> session( | 942 scoped_ptr<HttpNetworkSession> session( |
| 945 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 943 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 946 | 944 |
| 947 // Now request a stream. | 945 // Now request a stream. |
| 948 HttpRequestInfo request_info; | 946 HttpRequestInfo request_info; |
| 949 request_info.method = "GET"; | 947 request_info.method = "GET"; |
| 950 request_info.url = GURL("https://www.google.com"); | 948 request_info.url = GURL("https://www.google.com"); |
| 951 request_info.load_flags = 0; | 949 request_info.load_flags = 0; |
| 952 | 950 |
| 953 SSLConfig ssl_config; | 951 SSLConfig ssl_config; |
| 954 StreamRequestWaiter waiter; | 952 StreamRequestWaiter waiter; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 979 } | 977 } |
| 980 | 978 |
| 981 TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverProxy) { | 979 TEST_P(HttpStreamFactoryTest, RequestHttpStreamOverProxy) { |
| 982 SpdySessionDependencies session_deps( | 980 SpdySessionDependencies session_deps( |
| 983 GetParam(), ProxyService::CreateFixed("myproxy:8888")); | 981 GetParam(), ProxyService::CreateFixed("myproxy:8888")); |
| 984 | 982 |
| 985 StaticSocketDataProvider socket_data; | 983 StaticSocketDataProvider socket_data; |
| 986 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 984 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 987 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 985 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 988 | 986 |
| 989 scoped_refptr<HttpNetworkSession> session( | 987 scoped_ptr<HttpNetworkSession> session( |
| 990 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 988 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 991 | 989 |
| 992 // Now request a stream. It should succeed using the second proxy in the | 990 // Now request a stream. It should succeed using the second proxy in the |
| 993 // list. | 991 // list. |
| 994 HttpRequestInfo request_info; | 992 HttpRequestInfo request_info; |
| 995 request_info.method = "GET"; | 993 request_info.method = "GET"; |
| 996 request_info.url = GURL("http://www.google.com"); | 994 request_info.url = GURL("http://www.google.com"); |
| 997 request_info.load_flags = 0; | 995 request_info.load_flags = 0; |
| 998 | 996 |
| 999 SSLConfig ssl_config; | 997 SSLConfig ssl_config; |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1032 } | 1030 } |
| 1033 | 1031 |
| 1034 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStream) { | 1032 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStream) { |
| 1035 SpdySessionDependencies session_deps( | 1033 SpdySessionDependencies session_deps( |
| 1036 GetParam(), ProxyService::CreateDirect()); | 1034 GetParam(), ProxyService::CreateDirect()); |
| 1037 | 1035 |
| 1038 StaticSocketDataProvider socket_data; | 1036 StaticSocketDataProvider socket_data; |
| 1039 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1037 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1040 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1038 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1041 | 1039 |
| 1042 scoped_refptr<HttpNetworkSession> session( | 1040 scoped_ptr<HttpNetworkSession> session( |
| 1043 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1041 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1044 | 1042 |
| 1045 // Now request a stream. | 1043 // Now request a stream. |
| 1046 HttpRequestInfo request_info; | 1044 HttpRequestInfo request_info; |
| 1047 request_info.method = "GET"; | 1045 request_info.method = "GET"; |
| 1048 request_info.url = GURL("ws://www.google.com"); | 1046 request_info.url = GURL("ws://www.google.com"); |
| 1049 request_info.load_flags = 0; | 1047 request_info.load_flags = 0; |
| 1050 | 1048 |
| 1051 SSLConfig ssl_config; | 1049 SSLConfig ssl_config; |
| 1052 StreamRequestWaiter waiter; | 1050 StreamRequestWaiter waiter; |
| (...skipping 27 matching lines...) Expand all Loading... |
| 1080 GetParam(), ProxyService::CreateDirect()); | 1078 GetParam(), ProxyService::CreateDirect()); |
| 1081 | 1079 |
| 1082 MockRead mock_read(ASYNC, OK); | 1080 MockRead mock_read(ASYNC, OK); |
| 1083 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1081 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
| 1084 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1082 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1085 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1083 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1086 | 1084 |
| 1087 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1085 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1088 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1086 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1089 | 1087 |
| 1090 scoped_refptr<HttpNetworkSession> session( | 1088 scoped_ptr<HttpNetworkSession> session( |
| 1091 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1089 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1092 | 1090 |
| 1093 // Now request a stream. | 1091 // Now request a stream. |
| 1094 HttpRequestInfo request_info; | 1092 HttpRequestInfo request_info; |
| 1095 request_info.method = "GET"; | 1093 request_info.method = "GET"; |
| 1096 request_info.url = GURL("wss://www.google.com"); | 1094 request_info.url = GURL("wss://www.google.com"); |
| 1097 request_info.load_flags = 0; | 1095 request_info.load_flags = 0; |
| 1098 | 1096 |
| 1099 SSLConfig ssl_config; | 1097 SSLConfig ssl_config; |
| 1100 StreamRequestWaiter waiter; | 1098 StreamRequestWaiter waiter; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 1125 | 1123 |
| 1126 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverProxy) { | 1124 TEST_P(HttpStreamFactoryTest, RequestWebSocketBasicHandshakeStreamOverProxy) { |
| 1127 SpdySessionDependencies session_deps( | 1125 SpdySessionDependencies session_deps( |
| 1128 GetParam(), ProxyService::CreateFixed("myproxy:8888")); | 1126 GetParam(), ProxyService::CreateFixed("myproxy:8888")); |
| 1129 | 1127 |
| 1130 MockRead read(SYNCHRONOUS, "HTTP/1.0 200 Connection established\r\n\r\n"); | 1128 MockRead read(SYNCHRONOUS, "HTTP/1.0 200 Connection established\r\n\r\n"); |
| 1131 StaticSocketDataProvider socket_data(&read, 1, 0, 0); | 1129 StaticSocketDataProvider socket_data(&read, 1, 0, 0); |
| 1132 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1130 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1133 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1131 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1134 | 1132 |
| 1135 scoped_refptr<HttpNetworkSession> session( | 1133 scoped_ptr<HttpNetworkSession> session( |
| 1136 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1134 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1137 | 1135 |
| 1138 // Now request a stream. | 1136 // Now request a stream. |
| 1139 HttpRequestInfo request_info; | 1137 HttpRequestInfo request_info; |
| 1140 request_info.method = "GET"; | 1138 request_info.method = "GET"; |
| 1141 request_info.url = GURL("ws://www.google.com"); | 1139 request_info.url = GURL("ws://www.google.com"); |
| 1142 request_info.load_flags = 0; | 1140 request_info.load_flags = 0; |
| 1143 | 1141 |
| 1144 SSLConfig ssl_config; | 1142 SSLConfig ssl_config; |
| 1145 StreamRequestWaiter waiter; | 1143 StreamRequestWaiter waiter; |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1186 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); | 1184 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); |
| 1187 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); | 1185 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); |
| 1188 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1186 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1189 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1187 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1190 | 1188 |
| 1191 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1189 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1192 ssl_socket_data.SetNextProto(GetParam()); | 1190 ssl_socket_data.SetNextProto(GetParam()); |
| 1193 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1191 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1194 | 1192 |
| 1195 HostPortPair host_port_pair("www.google.com", 443); | 1193 HostPortPair host_port_pair("www.google.com", 443); |
| 1196 scoped_refptr<HttpNetworkSession> session( | 1194 scoped_ptr<HttpNetworkSession> session( |
| 1197 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1195 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1198 | 1196 |
| 1199 // Now request a stream. | 1197 // Now request a stream. |
| 1200 HttpRequestInfo request_info; | 1198 HttpRequestInfo request_info; |
| 1201 request_info.method = "GET"; | 1199 request_info.method = "GET"; |
| 1202 request_info.url = GURL("https://www.google.com"); | 1200 request_info.url = GURL("https://www.google.com"); |
| 1203 request_info.load_flags = 0; | 1201 request_info.load_flags = 0; |
| 1204 | 1202 |
| 1205 SSLConfig ssl_config; | 1203 SSLConfig ssl_config; |
| 1206 StreamRequestWaiter waiter; | 1204 StreamRequestWaiter waiter; |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1239 | 1237 |
| 1240 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); | 1238 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); |
| 1241 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1239 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
| 1242 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1240 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1243 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1241 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1244 | 1242 |
| 1245 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1243 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1246 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1244 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1247 | 1245 |
| 1248 HostPortPair host_port_pair("www.google.com", 80); | 1246 HostPortPair host_port_pair("www.google.com", 80); |
| 1249 scoped_refptr<HttpNetworkSession> | 1247 scoped_ptr<HttpNetworkSession> session( |
| 1250 session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1248 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1251 | 1249 |
| 1252 // Now request a stream. | 1250 // Now request a stream. |
| 1253 HttpRequestInfo request_info; | 1251 HttpRequestInfo request_info; |
| 1254 request_info.method = "GET"; | 1252 request_info.method = "GET"; |
| 1255 request_info.url = GURL("wss://www.google.com"); | 1253 request_info.url = GURL("wss://www.google.com"); |
| 1256 request_info.load_flags = 0; | 1254 request_info.load_flags = 0; |
| 1257 | 1255 |
| 1258 SSLConfig ssl_config; | 1256 SSLConfig ssl_config; |
| 1259 StreamRequestWaiter waiter1; | 1257 StreamRequestWaiter waiter1; |
| 1260 WebSocketStreamCreateHelper create_helper; | 1258 WebSocketStreamCreateHelper create_helper; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 1291 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); | 1289 MockRead mock_read(SYNCHRONOUS, ERR_IO_PENDING); |
| 1292 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); | 1290 StaticSocketDataProvider socket_data(&mock_read, 1, nullptr, 0); |
| 1293 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1291 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1294 session_deps.socket_factory->AddSocketDataProvider(&socket_data); | 1292 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1295 | 1293 |
| 1296 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1294 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1297 ssl_socket_data.SetNextProto(GetParam()); | 1295 ssl_socket_data.SetNextProto(GetParam()); |
| 1298 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1296 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1299 | 1297 |
| 1300 HostPortPair host_port_pair("www.google.com", 80); | 1298 HostPortPair host_port_pair("www.google.com", 80); |
| 1301 scoped_refptr<HttpNetworkSession> | 1299 scoped_ptr<HttpNetworkSession> session( |
| 1302 session(SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1300 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1303 | 1301 |
| 1304 // Now request a stream. | 1302 // Now request a stream. |
| 1305 HttpRequestInfo request_info; | 1303 HttpRequestInfo request_info; |
| 1306 request_info.method = "GET"; | 1304 request_info.method = "GET"; |
| 1307 request_info.url = GURL("wss://www.google.com"); | 1305 request_info.url = GURL("wss://www.google.com"); |
| 1308 request_info.load_flags = 0; | 1306 request_info.load_flags = 0; |
| 1309 | 1307 |
| 1310 SSLConfig ssl_config; | 1308 SSLConfig ssl_config; |
| 1311 StreamRequestWaiter waiter1; | 1309 StreamRequestWaiter waiter1; |
| 1312 WebSocketStreamCreateHelper create_helper; | 1310 WebSocketStreamCreateHelper create_helper; |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1373 | 1371 |
| 1374 MockRead mock_read2(ASYNC, OK); | 1372 MockRead mock_read2(ASYNC, OK); |
| 1375 SequencedSocketData socket_data2(&mock_read2, 1, nullptr, 0); | 1373 SequencedSocketData socket_data2(&mock_read2, 1, nullptr, 0); |
| 1376 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); | 1374 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); |
| 1377 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); | 1375 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); |
| 1378 | 1376 |
| 1379 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1377 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1380 ssl_socket_data.SetNextProto(GetParam()); | 1378 ssl_socket_data.SetNextProto(GetParam()); |
| 1381 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); | 1379 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1382 | 1380 |
| 1383 scoped_refptr<HttpNetworkSession> session( | 1381 scoped_ptr<HttpNetworkSession> session( |
| 1384 SpdySessionDependencies::SpdyCreateSession(&session_deps)); | 1382 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1385 | 1383 |
| 1386 // Now request a stream. | 1384 // Now request a stream. |
| 1387 HttpRequestInfo request_info; | 1385 HttpRequestInfo request_info; |
| 1388 request_info.method = "GET"; | 1386 request_info.method = "GET"; |
| 1389 request_info.url = GURL("ws://www.google.com:8888"); | 1387 request_info.url = GURL("ws://www.google.com:8888"); |
| 1390 request_info.load_flags = 0; | 1388 request_info.load_flags = 0; |
| 1391 | 1389 |
| 1392 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 1390 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
| 1393 session->http_server_properties()->SetAlternativeService( | 1391 session->http_server_properties()->SetAlternativeService( |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1427 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); | 1425 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); |
| 1428 | 1426 |
| 1429 // Make sure there is no orphaned job. it is already canceled. | 1427 // Make sure there is no orphaned job. it is already canceled. |
| 1430 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( | 1428 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( |
| 1431 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); | 1429 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); |
| 1432 } | 1430 } |
| 1433 | 1431 |
| 1434 } // namespace | 1432 } // namespace |
| 1435 | 1433 |
| 1436 } // namespace net | 1434 } // namespace net |
| OLD | NEW |