| 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 <memory> | 9 #include <memory> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 1091 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1102 } | 1102 } |
| 1103 } | 1103 } |
| 1104 } | 1104 } |
| 1105 | 1105 |
| 1106 TEST_F(HttpStreamFactoryTest, UsePreConnectIfNoZeroRTT) { | 1106 TEST_F(HttpStreamFactoryTest, UsePreConnectIfNoZeroRTT) { |
| 1107 for (int num_streams = 1; num_streams < 3; ++num_streams) { | 1107 for (int num_streams = 1; num_streams < 3; ++num_streams) { |
| 1108 GURL url = GURL("https://www.google.com"); | 1108 GURL url = GURL("https://www.google.com"); |
| 1109 | 1109 |
| 1110 // Set up QUIC as alternative_service. | 1110 // Set up QUIC as alternative_service. |
| 1111 HttpServerPropertiesImpl http_server_properties; | 1111 HttpServerPropertiesImpl http_server_properties; |
| 1112 const AlternativeService alternative_service(kProtoQUIC, url.host().c_str(), | 1112 const AlternativeService alternative_service(QUIC, url.host().c_str(), |
| 1113 url.IntPort()); | 1113 url.IntPort()); |
| 1114 AlternativeServiceInfoVector alternative_service_info_vector; | 1114 AlternativeServiceInfoVector alternative_service_info_vector; |
| 1115 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 1115 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
| 1116 alternative_service_info_vector.push_back( | 1116 alternative_service_info_vector.push_back( |
| 1117 AlternativeServiceInfo(alternative_service, expiration)); | 1117 AlternativeServiceInfo(alternative_service, expiration)); |
| 1118 HostPortPair host_port_pair(alternative_service.host_port_pair()); | 1118 HostPortPair host_port_pair(alternative_service.host_port_pair()); |
| 1119 url::SchemeHostPort server("https", host_port_pair.host(), | 1119 url::SchemeHostPort server("https", host_port_pair.host(), |
| 1120 host_port_pair.port()); | 1120 host_port_pair.port()); |
| 1121 http_server_properties.SetAlternativeServices( | 1121 http_server_properties.SetAlternativeServices( |
| 1122 server, alternative_service_info_vector); | 1122 server, alternative_service_info_vector); |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1157 EXPECT_EQ(num_streams, ssl_conn_pool->last_num_streams()); | 1157 EXPECT_EQ(num_streams, ssl_conn_pool->last_num_streams()); |
| 1158 } | 1158 } |
| 1159 } | 1159 } |
| 1160 | 1160 |
| 1161 TEST_F(HttpStreamFactoryTest, QuicDisablePreConnectIfZeroRtt) { | 1161 TEST_F(HttpStreamFactoryTest, QuicDisablePreConnectIfZeroRtt) { |
| 1162 for (int num_streams = 1; num_streams < 3; ++num_streams) { | 1162 for (int num_streams = 1; num_streams < 3; ++num_streams) { |
| 1163 GURL url = GURL("https://www.google.com"); | 1163 GURL url = GURL("https://www.google.com"); |
| 1164 | 1164 |
| 1165 // Set up QUIC as alternative_service. | 1165 // Set up QUIC as alternative_service. |
| 1166 HttpServerPropertiesImpl http_server_properties; | 1166 HttpServerPropertiesImpl http_server_properties; |
| 1167 const AlternativeService alternative_service(kProtoQUIC, "www.google.com", | 1167 const AlternativeService alternative_service(QUIC, "www.google.com", 443); |
| 1168 443); | |
| 1169 AlternativeServiceInfoVector alternative_service_info_vector; | 1168 AlternativeServiceInfoVector alternative_service_info_vector; |
| 1170 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 1169 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
| 1171 alternative_service_info_vector.push_back( | 1170 alternative_service_info_vector.push_back( |
| 1172 AlternativeServiceInfo(alternative_service, expiration)); | 1171 AlternativeServiceInfo(alternative_service, expiration)); |
| 1173 HostPortPair host_port_pair(alternative_service.host_port_pair()); | 1172 HostPortPair host_port_pair(alternative_service.host_port_pair()); |
| 1174 url::SchemeHostPort server("https", host_port_pair.host(), | 1173 url::SchemeHostPort server("https", host_port_pair.host(), |
| 1175 host_port_pair.port()); | 1174 host_port_pair.port()); |
| 1176 http_server_properties.SetAlternativeServices( | 1175 http_server_properties.SetAlternativeServices( |
| 1177 server, alternative_service_info_vector); | 1176 server, alternative_service_info_vector); |
| 1178 | 1177 |
| (...skipping 609 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1788 params_.ct_policy_enforcer = &ct_policy_enforcer_; | 1787 params_.ct_policy_enforcer = &ct_policy_enforcer_; |
| 1789 params_.host_resolver = &host_resolver_; | 1788 params_.host_resolver = &host_resolver_; |
| 1790 params_.proxy_service = proxy_service_.get(); | 1789 params_.proxy_service = proxy_service_.get(); |
| 1791 params_.ssl_config_service = ssl_config_service_.get(); | 1790 params_.ssl_config_service = ssl_config_service_.get(); |
| 1792 params_.client_socket_factory = &socket_factory_; | 1791 params_.client_socket_factory = &socket_factory_; |
| 1793 session_.reset(new HttpNetworkSession(params_)); | 1792 session_.reset(new HttpNetworkSession(params_)); |
| 1794 session_->quic_stream_factory()->set_require_confirmation(false); | 1793 session_->quic_stream_factory()->set_require_confirmation(false); |
| 1795 } | 1794 } |
| 1796 | 1795 |
| 1797 void AddQuicAlternativeService() { | 1796 void AddQuicAlternativeService() { |
| 1798 const AlternativeService alternative_service(kProtoQUIC, "www.example.org", | 1797 const AlternativeService alternative_service(QUIC, "www.example.org", 443); |
| 1799 443); | |
| 1800 AlternativeServiceInfoVector alternative_service_info_vector; | 1798 AlternativeServiceInfoVector alternative_service_info_vector; |
| 1801 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 1799 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
| 1802 alternative_service_info_vector.push_back( | 1800 alternative_service_info_vector.push_back( |
| 1803 AlternativeServiceInfo(alternative_service, expiration)); | 1801 AlternativeServiceInfo(alternative_service, expiration)); |
| 1804 http_server_properties_.SetAlternativeServices( | 1802 http_server_properties_.SetAlternativeServices( |
| 1805 url::SchemeHostPort(default_url_), alternative_service_info_vector); | 1803 url::SchemeHostPort(default_url_), alternative_service_info_vector); |
| 1806 }; | 1804 }; |
| 1807 | 1805 |
| 1808 test::QuicTestPacketMaker& client_packet_maker() { | 1806 test::QuicTestPacketMaker& client_packet_maker() { |
| 1809 return client_packet_maker_; | 1807 return client_packet_maker_; |
| (...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2233 request_info.method = "GET"; | 2231 request_info.method = "GET"; |
| 2234 request_info.url = GURL("ws://www.google.com:8888"); | 2232 request_info.url = GURL("ws://www.google.com:8888"); |
| 2235 request_info.load_flags = 0; | 2233 request_info.load_flags = 0; |
| 2236 | 2234 |
| 2237 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 2235 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
| 2238 HostPortPair host_port_pair("www.google.com", 8888); | 2236 HostPortPair host_port_pair("www.google.com", 8888); |
| 2239 | 2237 |
| 2240 session->http_server_properties()->SetAlternativeService( | 2238 session->http_server_properties()->SetAlternativeService( |
| 2241 url::SchemeHostPort(request_info.url.scheme(), host_port_pair.host(), | 2239 url::SchemeHostPort(request_info.url.scheme(), host_port_pair.host(), |
| 2242 host_port_pair.port()), | 2240 host_port_pair.port()), |
| 2243 AlternativeService(kProtoHTTP2, "www.google.com", 9999), expiration); | 2241 AlternativeService(NPN_HTTP_2, "www.google.com", 9999), expiration); |
| 2244 | 2242 |
| 2245 SSLConfig ssl_config; | 2243 SSLConfig ssl_config; |
| 2246 StreamRequestWaiter waiter; | 2244 StreamRequestWaiter waiter; |
| 2247 WebSocketStreamCreateHelper create_helper; | 2245 WebSocketStreamCreateHelper create_helper; |
| 2248 std::unique_ptr<HttpStreamRequest> request( | 2246 std::unique_ptr<HttpStreamRequest> request( |
| 2249 session->http_stream_factory_for_websocket() | 2247 session->http_stream_factory_for_websocket() |
| 2250 ->RequestWebSocketHandshakeStream( | 2248 ->RequestWebSocketHandshakeStream( |
| 2251 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, &waiter, | 2249 request_info, DEFAULT_PRIORITY, ssl_config, ssl_config, &waiter, |
| 2252 &create_helper, NetLogWithSource())); | 2250 &create_helper, NetLogWithSource())); |
| 2253 waiter.WaitForStream(); | 2251 waiter.WaitForStream(); |
| (...skipping 13 matching lines...) Expand all Loading... |
| 2267 session->GetTransportSocketPool( | 2265 session->GetTransportSocketPool( |
| 2268 HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); | 2266 HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); |
| 2269 EXPECT_EQ(1, GetSocketPoolGroupCount( | 2267 EXPECT_EQ(1, GetSocketPoolGroupCount( |
| 2270 session->GetSSLSocketPool(HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); | 2268 session->GetSSLSocketPool(HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); |
| 2271 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); | 2269 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); |
| 2272 } | 2270 } |
| 2273 | 2271 |
| 2274 } // namespace | 2272 } // namespace |
| 2275 | 2273 |
| 2276 } // namespace net | 2274 } // namespace net |
| OLD | NEW |