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 |