| 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 <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 1093 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1104 HttpNetworkSession::WEBSOCKET_SOCKET_POOL, | 1104 HttpNetworkSession::WEBSOCKET_SOCKET_POOL, |
| 1105 HostPortPair("myproxy", 8888)))); | 1105 HostPortPair("myproxy", 8888)))); |
| 1106 EXPECT_FALSE(waiter.used_proxy_info().is_direct()); | 1106 EXPECT_FALSE(waiter.used_proxy_info().is_direct()); |
| 1107 } | 1107 } |
| 1108 | 1108 |
| 1109 TEST_P(HttpStreamFactoryTest, RequestSpdyHttpStream) { | 1109 TEST_P(HttpStreamFactoryTest, RequestSpdyHttpStream) { |
| 1110 SpdySessionDependencies session_deps(GetParam(), | 1110 SpdySessionDependencies session_deps(GetParam(), |
| 1111 ProxyService::CreateDirect()); | 1111 ProxyService::CreateDirect()); |
| 1112 | 1112 |
| 1113 MockRead mock_read(ASYNC, OK); | 1113 MockRead mock_read(ASYNC, OK); |
| 1114 DeterministicSocketData socket_data(&mock_read, 1, nullptr, 0); | 1114 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); |
| 1115 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1115 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1116 session_deps.deterministic_socket_factory->AddSocketDataProvider( | 1116 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1117 &socket_data); | |
| 1118 | 1117 |
| 1119 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1118 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1120 ssl_socket_data.SetNextProto(GetParam()); | 1119 ssl_socket_data.SetNextProto(GetParam()); |
| 1121 session_deps.deterministic_socket_factory->AddSSLSocketDataProvider( | 1120 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1122 &ssl_socket_data); | |
| 1123 | 1121 |
| 1124 HostPortPair host_port_pair("www.google.com", 443); | 1122 HostPortPair host_port_pair("www.google.com", 443); |
| 1125 scoped_refptr<HttpNetworkSession> | 1123 scoped_refptr<HttpNetworkSession> session( |
| 1126 session(SpdySessionDependencies::SpdyCreateSessionDeterministic( | 1124 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1127 &session_deps)); | |
| 1128 | 1125 |
| 1129 // Now request a stream. | 1126 // Now request a stream. |
| 1130 HttpRequestInfo request_info; | 1127 HttpRequestInfo request_info; |
| 1131 request_info.method = "GET"; | 1128 request_info.method = "GET"; |
| 1132 request_info.url = GURL("https://www.google.com"); | 1129 request_info.url = GURL("https://www.google.com"); |
| 1133 request_info.load_flags = 0; | 1130 request_info.load_flags = 0; |
| 1134 | 1131 |
| 1135 SSLConfig ssl_config; | 1132 SSLConfig ssl_config; |
| 1136 StreamRequestWaiter waiter; | 1133 StreamRequestWaiter waiter; |
| 1137 scoped_ptr<HttpStreamRequest> request( | 1134 scoped_ptr<HttpStreamRequest> request( |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1289 EXPECT_TRUE(waiter1.used_proxy_info().is_direct()); | 1286 EXPECT_TRUE(waiter1.used_proxy_info().is_direct()); |
| 1290 } | 1287 } |
| 1291 | 1288 |
| 1292 // TODO(ricea): Re-enable once WebSocket over SPDY is implemented. | 1289 // TODO(ricea): Re-enable once WebSocket over SPDY is implemented. |
| 1293 TEST_P(HttpStreamFactoryTest, DISABLED_OrphanedWebSocketStream) { | 1290 TEST_P(HttpStreamFactoryTest, DISABLED_OrphanedWebSocketStream) { |
| 1294 SpdySessionDependencies session_deps(GetParam(), | 1291 SpdySessionDependencies session_deps(GetParam(), |
| 1295 ProxyService::CreateDirect()); | 1292 ProxyService::CreateDirect()); |
| 1296 session_deps.use_alternate_protocols = true; | 1293 session_deps.use_alternate_protocols = true; |
| 1297 | 1294 |
| 1298 MockRead mock_read(ASYNC, OK); | 1295 MockRead mock_read(ASYNC, OK); |
| 1299 DeterministicSocketData socket_data(&mock_read, 1, nullptr, 0); | 1296 SequencedSocketData socket_data(&mock_read, 1, nullptr, 0); |
| 1300 socket_data.set_connect_data(MockConnect(ASYNC, OK)); | 1297 socket_data.set_connect_data(MockConnect(ASYNC, OK)); |
| 1301 session_deps.deterministic_socket_factory->AddSocketDataProvider( | 1298 session_deps.socket_factory->AddSocketDataProvider(&socket_data); |
| 1302 &socket_data); | |
| 1303 | 1299 |
| 1304 MockRead mock_read2(ASYNC, OK); | 1300 MockRead mock_read2(ASYNC, OK); |
| 1305 DeterministicSocketData socket_data2(&mock_read2, 1, nullptr, 0); | 1301 SequencedSocketData socket_data2(&mock_read2, 1, nullptr, 0); |
| 1306 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); | 1302 socket_data2.set_connect_data(MockConnect(ASYNC, ERR_IO_PENDING)); |
| 1307 session_deps.deterministic_socket_factory->AddSocketDataProvider( | 1303 session_deps.socket_factory->AddSocketDataProvider(&socket_data2); |
| 1308 &socket_data2); | |
| 1309 | 1304 |
| 1310 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); | 1305 SSLSocketDataProvider ssl_socket_data(ASYNC, OK); |
| 1311 ssl_socket_data.SetNextProto(GetParam()); | 1306 ssl_socket_data.SetNextProto(GetParam()); |
| 1312 session_deps.deterministic_socket_factory->AddSSLSocketDataProvider( | 1307 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl_socket_data); |
| 1313 &ssl_socket_data); | |
| 1314 | 1308 |
| 1315 scoped_refptr<HttpNetworkSession> | 1309 scoped_refptr<HttpNetworkSession> session( |
| 1316 session(SpdySessionDependencies::SpdyCreateSessionDeterministic( | 1310 SpdySessionDependencies::SpdyCreateSession(&session_deps)); |
| 1317 &session_deps)); | |
| 1318 | 1311 |
| 1319 // Now request a stream. | 1312 // Now request a stream. |
| 1320 HttpRequestInfo request_info; | 1313 HttpRequestInfo request_info; |
| 1321 request_info.method = "GET"; | 1314 request_info.method = "GET"; |
| 1322 request_info.url = GURL("ws://www.google.com:8888"); | 1315 request_info.url = GURL("ws://www.google.com:8888"); |
| 1323 request_info.load_flags = 0; | 1316 request_info.load_flags = 0; |
| 1324 | 1317 |
| 1325 session->http_server_properties()->SetAlternativeService( | 1318 session->http_server_properties()->SetAlternativeService( |
| 1326 HostPortPair("www.google.com", 8888), | 1319 HostPortPair("www.google.com", 8888), |
| 1327 AlternativeService(NPN_SPDY_4, "www.google.com", 9999), 1.0); | 1320 AlternativeService(NPN_SPDY_4, "www.google.com", 9999), 1.0); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1359 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); | 1352 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); |
| 1360 | 1353 |
| 1361 // Make sure there is no orphaned job. it is already canceled. | 1354 // Make sure there is no orphaned job. it is already canceled. |
| 1362 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( | 1355 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( |
| 1363 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); | 1356 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); |
| 1364 } | 1357 } |
| 1365 | 1358 |
| 1366 } // namespace | 1359 } // namespace |
| 1367 | 1360 |
| 1368 } // namespace net | 1361 } // namespace net |
| OLD | NEW |