| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "components/cronet/url_request_context_config.h" | 5 #include "components/cronet/url_request_context_config.h" |
| 6 | 6 |
| 7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
| 8 #include "base/values.h" | 8 #include "base/values.h" |
| 9 #include "net/cert/cert_verifier.h" | 9 #include "net/cert/cert_verifier.h" |
| 10 #include "net/http/http_network_session.h" | 10 #include "net/http/http_network_session.h" |
| 11 #include "net/proxy/proxy_config.h" | 11 #include "net/proxy/proxy_config.h" |
| 12 #include "net/proxy/proxy_config_service_fixed.h" | 12 #include "net/proxy/proxy_config_service_fixed.h" |
| 13 #include "net/url_request/url_request_context.h" | 13 #include "net/url_request/url_request_context.h" |
| 14 #include "net/url_request/url_request_context_builder.h" | 14 #include "net/url_request/url_request_context_builder.h" |
| 15 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
| 16 | 16 |
| 17 namespace cronet { | 17 namespace cronet { |
| 18 | 18 |
| 19 TEST(URLRequestContextConfigTest, SetQuicExperimentalOptions) { | 19 TEST(URLRequestContextConfigTest, TestExperimentalOptionPassing) { |
| 20 URLRequestContextConfig config( | 20 URLRequestContextConfig config( |
| 21 // Enable QUIC. | 21 // Enable QUIC. |
| 22 true, | 22 true, |
| 23 // QUIC User Agent ID. | 23 // QUIC User Agent ID. |
| 24 "Default QUIC User Agent ID", | 24 "Default QUIC User Agent ID", |
| 25 // Enable SPDY. | 25 // Enable SPDY. |
| 26 true, | 26 true, |
| 27 // Enable SDCH. | 27 // Enable SDCH. |
| 28 false, | 28 false, |
| 29 // Type of http cache. | 29 // Type of http cache. |
| (...skipping 11 matching lines...) Expand all Loading... |
| 41 "{\"QUIC\":{\"max_server_configs_stored_in_properties\":2," | 41 "{\"QUIC\":{\"max_server_configs_stored_in_properties\":2," |
| 42 "\"delay_tcp_race\":true," | 42 "\"delay_tcp_race\":true," |
| 43 "\"max_number_of_lossy_connections\":10," | 43 "\"max_number_of_lossy_connections\":10," |
| 44 "\"prefer_aes\":true," | 44 "\"prefer_aes\":true," |
| 45 "\"user_agent_id\":\"Custom QUIC UAID\"," | 45 "\"user_agent_id\":\"Custom QUIC UAID\"," |
| 46 "\"packet_loss_threshold\":0.5," | 46 "\"packet_loss_threshold\":0.5," |
| 47 "\"idle_connection_timeout_seconds\":300," | 47 "\"idle_connection_timeout_seconds\":300," |
| 48 "\"close_sessions_on_ip_change\":true," | 48 "\"close_sessions_on_ip_change\":true," |
| 49 "\"race_cert_verification\":true," | 49 "\"race_cert_verification\":true," |
| 50 "\"connection_options\":\"TIME,TBBR,REJ\"}," | 50 "\"connection_options\":\"TIME,TBBR,REJ\"}," |
| 51 "\"AsyncDNS\":{\"enable\":true}}", | 51 "\"AsyncDNS\":{\"enable\":true}," |
| 52 "\"HostResolverRules\":{\"host_resolver_rules\":" |
| 53 "\"MAP * 127.0.0.1\"}}", |
| 52 // Data reduction proxy key. | 54 // Data reduction proxy key. |
| 53 "", | 55 "", |
| 54 // Data reduction proxy. | 56 // Data reduction proxy. |
| 55 "", | 57 "", |
| 56 // Fallback data reduction proxy. | 58 // Fallback data reduction proxy. |
| 57 "", | 59 "", |
| 58 // Data reduction proxy secure proxy check URL. | 60 // Data reduction proxy secure proxy check URL. |
| 59 "", | 61 "", |
| 60 // MockCertVerifier to use for testing purposes. | 62 // MockCertVerifier to use for testing purposes. |
| 61 std::unique_ptr<net::CertVerifier>(), | 63 std::unique_ptr<net::CertVerifier>(), |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 EXPECT_EQ(300, params->quic_idle_connection_timeout_seconds); | 104 EXPECT_EQ(300, params->quic_idle_connection_timeout_seconds); |
| 103 | 105 |
| 104 EXPECT_TRUE(params->quic_close_sessions_on_ip_change); | 106 EXPECT_TRUE(params->quic_close_sessions_on_ip_change); |
| 105 EXPECT_FALSE(params->quic_migrate_sessions_on_network_change); | 107 EXPECT_FALSE(params->quic_migrate_sessions_on_network_change); |
| 106 | 108 |
| 107 // Check race_cert_verification. | 109 // Check race_cert_verification. |
| 108 EXPECT_TRUE(params->quic_race_cert_verification); | 110 EXPECT_TRUE(params->quic_race_cert_verification); |
| 109 | 111 |
| 110 // Check AsyncDNS resolver is enabled. | 112 // Check AsyncDNS resolver is enabled. |
| 111 EXPECT_TRUE(context->host_resolver()->GetDnsConfigAsValue()); | 113 EXPECT_TRUE(context->host_resolver()->GetDnsConfigAsValue()); |
| 114 |
| 115 net::HostResolver::RequestInfo info(net::HostPortPair("abcde", 80)); |
| 116 net::AddressList addresses; |
| 117 EXPECT_EQ(net::OK, context->host_resolver()->ResolveFromCache( |
| 118 info, &addresses, net::BoundNetLog())); |
| 112 } | 119 } |
| 113 | 120 |
| 114 TEST(URLRequestContextConfigTest, SetQuicConnectionMigrationOptions) { | 121 TEST(URLRequestContextConfigTest, SetQuicConnectionMigrationOptions) { |
| 115 URLRequestContextConfig config( | 122 URLRequestContextConfig config( |
| 116 // Enable QUIC. | 123 // Enable QUIC. |
| 117 true, | 124 true, |
| 118 // QUIC User Agent ID. | 125 // QUIC User Agent ID. |
| 119 "Default QUIC User Agent ID", | 126 "Default QUIC User Agent ID", |
| 120 // Enable SPDY. | 127 // Enable SPDY. |
| 121 true, | 128 true, |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 161 std::unique_ptr<net::URLRequestContext> context(builder.Build()); | 168 std::unique_ptr<net::URLRequestContext> context(builder.Build()); |
| 162 const net::HttpNetworkSession::Params* params = | 169 const net::HttpNetworkSession::Params* params = |
| 163 context->GetNetworkSessionParams(); | 170 context->GetNetworkSessionParams(); |
| 164 | 171 |
| 165 EXPECT_FALSE(params->quic_close_sessions_on_ip_change); | 172 EXPECT_FALSE(params->quic_close_sessions_on_ip_change); |
| 166 EXPECT_TRUE(params->quic_migrate_sessions_on_network_change); | 173 EXPECT_TRUE(params->quic_migrate_sessions_on_network_change); |
| 167 EXPECT_TRUE(params->quic_migrate_sessions_early); | 174 EXPECT_TRUE(params->quic_migrate_sessions_early); |
| 168 } | 175 } |
| 169 | 176 |
| 170 } // namespace cronet | 177 } // namespace cronet |
| OLD | NEW |