| 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 <memory> | 5 #include <memory> |
| 6 #include <ostream> | 6 #include <ostream> |
| 7 #include <string> | 7 #include <string> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
| 12 #include "base/macros.h" | 12 #include "base/macros.h" |
| 13 #include "base/run_loop.h" | 13 #include "base/run_loop.h" |
| 14 #include "base/stl_util.h" | 14 #include "base/stl_util.h" |
| 15 #include "base/strings/stringprintf.h" | 15 #include "base/strings/stringprintf.h" |
| 16 #include "net/base/chunked_upload_data_stream.h" | 16 #include "net/base/chunked_upload_data_stream.h" |
| 17 #include "net/base/test_completion_callback.h" | 17 #include "net/base/test_completion_callback.h" |
| 18 #include "net/base/test_data_directory.h" | 18 #include "net/base/test_data_directory.h" |
| 19 #include "net/cert/ct_policy_enforcer.h" |
| 19 #include "net/cert/mock_cert_verifier.h" | 20 #include "net/cert/mock_cert_verifier.h" |
| 20 #include "net/cert/multi_log_ct_verifier.h" | 21 #include "net/cert/multi_log_ct_verifier.h" |
| 21 #include "net/dns/mock_host_resolver.h" | 22 #include "net/dns/mock_host_resolver.h" |
| 22 #include "net/http/http_auth_handler_factory.h" | 23 #include "net/http/http_auth_handler_factory.h" |
| 23 #include "net/http/http_network_session.h" | 24 #include "net/http/http_network_session.h" |
| 24 #include "net/http/http_network_transaction.h" | 25 #include "net/http/http_network_transaction.h" |
| 25 #include "net/http/http_server_properties_impl.h" | 26 #include "net/http/http_server_properties_impl.h" |
| 26 #include "net/http/http_stream.h" | 27 #include "net/http/http_stream.h" |
| 27 #include "net/http/http_stream_factory.h" | 28 #include "net/http/http_stream_factory.h" |
| 28 #include "net/http/http_transaction_test_util.h" | 29 #include "net/http/http_transaction_test_util.h" |
| (...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 499 void CreateSession() { | 500 void CreateSession() { |
| 500 params_.enable_quic = true; | 501 params_.enable_quic = true; |
| 501 params_.quic_clock = clock_; | 502 params_.quic_clock = clock_; |
| 502 params_.quic_random = &random_generator_; | 503 params_.quic_random = &random_generator_; |
| 503 params_.client_socket_factory = &socket_factory_; | 504 params_.client_socket_factory = &socket_factory_; |
| 504 params_.quic_crypto_client_stream_factory = &crypto_client_stream_factory_; | 505 params_.quic_crypto_client_stream_factory = &crypto_client_stream_factory_; |
| 505 params_.host_resolver = &host_resolver_; | 506 params_.host_resolver = &host_resolver_; |
| 506 params_.cert_verifier = &cert_verifier_; | 507 params_.cert_verifier = &cert_verifier_; |
| 507 params_.transport_security_state = &transport_security_state_; | 508 params_.transport_security_state = &transport_security_state_; |
| 508 params_.cert_transparency_verifier = cert_transparency_verifier_.get(); | 509 params_.cert_transparency_verifier = cert_transparency_verifier_.get(); |
| 510 params_.ct_policy_enforcer = &ct_policy_enforcer_; |
| 509 params_.socket_performance_watcher_factory = | 511 params_.socket_performance_watcher_factory = |
| 510 &test_socket_performance_watcher_factory_; | 512 &test_socket_performance_watcher_factory_; |
| 511 params_.proxy_service = proxy_service_.get(); | 513 params_.proxy_service = proxy_service_.get(); |
| 512 params_.ssl_config_service = ssl_config_service_.get(); | 514 params_.ssl_config_service = ssl_config_service_.get(); |
| 513 params_.http_auth_handler_factory = auth_handler_factory_.get(); | 515 params_.http_auth_handler_factory = auth_handler_factory_.get(); |
| 514 params_.http_server_properties = http_server_properties_.GetWeakPtr(); | 516 params_.http_server_properties = http_server_properties_.GetWeakPtr(); |
| 515 params_.quic_supported_versions = SupportedVersions(GetParam()); | 517 params_.quic_supported_versions = SupportedVersions(GetParam()); |
| 516 for (const char* host : | 518 for (const char* host : |
| 517 {kDefaultServerHostName, "www.example.org", "news.example.org", | 519 {kDefaultServerHostName, "www.example.org", "news.example.org", |
| 518 "bar.example.org", "foo.example.org", "invalid.example.org", | 520 "bar.example.org", "foo.example.org", "invalid.example.org", |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 642 QuicTestPacketMaker client_maker_; | 644 QuicTestPacketMaker client_maker_; |
| 643 QuicTestPacketMaker server_maker_; | 645 QuicTestPacketMaker server_maker_; |
| 644 std::unique_ptr<HttpNetworkSession> session_; | 646 std::unique_ptr<HttpNetworkSession> session_; |
| 645 MockClientSocketFactory socket_factory_; | 647 MockClientSocketFactory socket_factory_; |
| 646 ProofVerifyDetailsChromium verify_details_; | 648 ProofVerifyDetailsChromium verify_details_; |
| 647 MockCryptoClientStreamFactory crypto_client_stream_factory_; | 649 MockCryptoClientStreamFactory crypto_client_stream_factory_; |
| 648 MockHostResolver host_resolver_; | 650 MockHostResolver host_resolver_; |
| 649 MockCertVerifier cert_verifier_; | 651 MockCertVerifier cert_verifier_; |
| 650 TransportSecurityState transport_security_state_; | 652 TransportSecurityState transport_security_state_; |
| 651 std::unique_ptr<CTVerifier> cert_transparency_verifier_; | 653 std::unique_ptr<CTVerifier> cert_transparency_verifier_; |
| 654 CTPolicyEnforcer ct_policy_enforcer_; |
| 652 TestSocketPerformanceWatcherFactory test_socket_performance_watcher_factory_; | 655 TestSocketPerformanceWatcherFactory test_socket_performance_watcher_factory_; |
| 653 scoped_refptr<SSLConfigServiceDefaults> ssl_config_service_; | 656 scoped_refptr<SSLConfigServiceDefaults> ssl_config_service_; |
| 654 std::unique_ptr<ProxyService> proxy_service_; | 657 std::unique_ptr<ProxyService> proxy_service_; |
| 655 std::unique_ptr<HttpAuthHandlerFactory> auth_handler_factory_; | 658 std::unique_ptr<HttpAuthHandlerFactory> auth_handler_factory_; |
| 656 MockRandom random_generator_; | 659 MockRandom random_generator_; |
| 657 HttpServerPropertiesImpl http_server_properties_; | 660 HttpServerPropertiesImpl http_server_properties_; |
| 658 HttpNetworkSession::Params params_; | 661 HttpNetworkSession::Params params_; |
| 659 HttpRequestInfo request_; | 662 HttpRequestInfo request_; |
| 660 BoundTestNetLog net_log_; | 663 BoundTestNetLog net_log_; |
| 661 std::vector<std::unique_ptr<StaticSocketDataProvider>> hanging_data_; | 664 std::vector<std::unique_ptr<StaticSocketDataProvider>> hanging_data_; |
| (...skipping 1512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2174 params.quic_crypto_client_stream_factory = &crypto_client_stream_factory_; | 2177 params.quic_crypto_client_stream_factory = &crypto_client_stream_factory_; |
| 2175 | 2178 |
| 2176 params.enable_alternative_service_with_different_host = true; | 2179 params.enable_alternative_service_with_different_host = true; |
| 2177 params.enable_quic = true; | 2180 params.enable_quic = true; |
| 2178 params.quic_random = &random_generator_; | 2181 params.quic_random = &random_generator_; |
| 2179 params.client_socket_factory = &socket_factory_; | 2182 params.client_socket_factory = &socket_factory_; |
| 2180 params.host_resolver = &host_resolver_; | 2183 params.host_resolver = &host_resolver_; |
| 2181 params.cert_verifier = &cert_verifier_; | 2184 params.cert_verifier = &cert_verifier_; |
| 2182 params.transport_security_state = &transport_security_state_; | 2185 params.transport_security_state = &transport_security_state_; |
| 2183 params.cert_transparency_verifier = cert_transparency_verifier_.get(); | 2186 params.cert_transparency_verifier = cert_transparency_verifier_.get(); |
| 2187 params.ct_policy_enforcer = &ct_policy_enforcer_; |
| 2184 params.socket_performance_watcher_factory = | 2188 params.socket_performance_watcher_factory = |
| 2185 &test_socket_performance_watcher_factory_; | 2189 &test_socket_performance_watcher_factory_; |
| 2186 params.ssl_config_service = ssl_config_service_.get(); | 2190 params.ssl_config_service = ssl_config_service_.get(); |
| 2187 params.proxy_service = proxy_service_.get(); | 2191 params.proxy_service = proxy_service_.get(); |
| 2188 params.http_auth_handler_factory = auth_handler_factory_.get(); | 2192 params.http_auth_handler_factory = auth_handler_factory_.get(); |
| 2189 params.http_server_properties = http_server_properties_.GetWeakPtr(); | 2193 params.http_server_properties = http_server_properties_.GetWeakPtr(); |
| 2190 params.quic_supported_versions = SupportedVersions(version_); | 2194 params.quic_supported_versions = SupportedVersions(version_); |
| 2191 params.quic_host_whitelist.insert("news.example.org"); | 2195 params.quic_host_whitelist.insert("news.example.org"); |
| 2192 params.quic_host_whitelist.insert("mail.example.org"); | 2196 params.quic_host_whitelist.insert("mail.example.org"); |
| 2193 params.quic_host_whitelist.insert("mail.example.com"); | 2197 params.quic_host_whitelist.insert("mail.example.com"); |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2346 QuicVersion version_; | 2350 QuicVersion version_; |
| 2347 DestinationType destination_type_; | 2351 DestinationType destination_type_; |
| 2348 std::string origin1_; | 2352 std::string origin1_; |
| 2349 std::string origin2_; | 2353 std::string origin2_; |
| 2350 std::unique_ptr<HttpNetworkSession> session_; | 2354 std::unique_ptr<HttpNetworkSession> session_; |
| 2351 MockClientSocketFactory socket_factory_; | 2355 MockClientSocketFactory socket_factory_; |
| 2352 MockHostResolver host_resolver_; | 2356 MockHostResolver host_resolver_; |
| 2353 MockCertVerifier cert_verifier_; | 2357 MockCertVerifier cert_verifier_; |
| 2354 TransportSecurityState transport_security_state_; | 2358 TransportSecurityState transport_security_state_; |
| 2355 std::unique_ptr<CTVerifier> cert_transparency_verifier_; | 2359 std::unique_ptr<CTVerifier> cert_transparency_verifier_; |
| 2360 CTPolicyEnforcer ct_policy_enforcer_; |
| 2356 TestSocketPerformanceWatcherFactory test_socket_performance_watcher_factory_; | 2361 TestSocketPerformanceWatcherFactory test_socket_performance_watcher_factory_; |
| 2357 scoped_refptr<SSLConfigServiceDefaults> ssl_config_service_; | 2362 scoped_refptr<SSLConfigServiceDefaults> ssl_config_service_; |
| 2358 std::unique_ptr<ProxyService> proxy_service_; | 2363 std::unique_ptr<ProxyService> proxy_service_; |
| 2359 std::unique_ptr<HttpAuthHandlerFactory> auth_handler_factory_; | 2364 std::unique_ptr<HttpAuthHandlerFactory> auth_handler_factory_; |
| 2360 MockRandom random_generator_; | 2365 MockRandom random_generator_; |
| 2361 HttpServerPropertiesImpl http_server_properties_; | 2366 HttpServerPropertiesImpl http_server_properties_; |
| 2362 BoundTestNetLog net_log_; | 2367 BoundTestNetLog net_log_; |
| 2363 MockCryptoClientStreamFactory crypto_client_stream_factory_; | 2368 MockCryptoClientStreamFactory crypto_client_stream_factory_; |
| 2364 std::vector<std::unique_ptr<StaticSocketDataProvider>> | 2369 std::vector<std::unique_ptr<StaticSocketDataProvider>> |
| 2365 static_socket_data_provider_vector_; | 2370 static_socket_data_provider_vector_; |
| (...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2557 AddHangingSocketData(); | 2562 AddHangingSocketData(); |
| 2558 | 2563 |
| 2559 SendRequestAndExpectQuicResponse(origin1_); | 2564 SendRequestAndExpectQuicResponse(origin1_); |
| 2560 SendRequestAndExpectQuicResponse(origin2_); | 2565 SendRequestAndExpectQuicResponse(origin2_); |
| 2561 | 2566 |
| 2562 EXPECT_TRUE(AllDataConsumed()); | 2567 EXPECT_TRUE(AllDataConsumed()); |
| 2563 } | 2568 } |
| 2564 | 2569 |
| 2565 } // namespace test | 2570 } // namespace test |
| 2566 } // namespace net | 2571 } // namespace net |
| OLD | NEW |