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 920 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
931 // Now request a stream. | 931 // Now request a stream. |
932 HttpRequestInfo request_info; | 932 HttpRequestInfo request_info; |
933 request_info.method = "GET"; | 933 request_info.method = "GET"; |
934 request_info.url = GURL("ws://www.google.com"); | 934 request_info.url = GURL("ws://www.google.com"); |
935 request_info.load_flags = 0; | 935 request_info.load_flags = 0; |
936 | 936 |
937 SSLConfig ssl_config; | 937 SSLConfig ssl_config; |
938 StreamRequestWaiter waiter; | 938 StreamRequestWaiter waiter; |
939 WebSocketStreamCreateHelper create_helper; | 939 WebSocketStreamCreateHelper create_helper; |
940 scoped_ptr<HttpStreamRequest> request( | 940 scoped_ptr<HttpStreamRequest> request( |
941 session->websocket_handshake_stream_factory() | 941 session->http_stream_factory_for_websocket() |
942 ->RequestWebSocketHandshakeStream(request_info, | 942 ->RequestWebSocketHandshakeStream(request_info, |
943 DEFAULT_PRIORITY, | 943 DEFAULT_PRIORITY, |
944 ssl_config, | 944 ssl_config, |
945 ssl_config, | 945 ssl_config, |
946 &waiter, | 946 &waiter, |
947 &create_helper, | 947 &create_helper, |
948 BoundNetLog())); | 948 BoundNetLog())); |
949 waiter.WaitForStream(); | 949 waiter.WaitForStream(); |
950 EXPECT_TRUE(waiter.stream_done()); | 950 EXPECT_TRUE(waiter.stream_done()); |
951 EXPECT_TRUE(NULL == waiter.stream()); | 951 EXPECT_TRUE(NULL == waiter.stream()); |
(...skipping 30 matching lines...) Expand all Loading... |
982 // Now request a stream. | 982 // Now request a stream. |
983 HttpRequestInfo request_info; | 983 HttpRequestInfo request_info; |
984 request_info.method = "GET"; | 984 request_info.method = "GET"; |
985 request_info.url = GURL("wss://www.google.com"); | 985 request_info.url = GURL("wss://www.google.com"); |
986 request_info.load_flags = 0; | 986 request_info.load_flags = 0; |
987 | 987 |
988 SSLConfig ssl_config; | 988 SSLConfig ssl_config; |
989 StreamRequestWaiter waiter; | 989 StreamRequestWaiter waiter; |
990 WebSocketStreamCreateHelper create_helper; | 990 WebSocketStreamCreateHelper create_helper; |
991 scoped_ptr<HttpStreamRequest> request( | 991 scoped_ptr<HttpStreamRequest> request( |
992 session->websocket_handshake_stream_factory() | 992 session->http_stream_factory_for_websocket() |
993 ->RequestWebSocketHandshakeStream(request_info, | 993 ->RequestWebSocketHandshakeStream(request_info, |
994 DEFAULT_PRIORITY, | 994 DEFAULT_PRIORITY, |
995 ssl_config, | 995 ssl_config, |
996 ssl_config, | 996 ssl_config, |
997 &waiter, | 997 &waiter, |
998 &create_helper, | 998 &create_helper, |
999 BoundNetLog())); | 999 BoundNetLog())); |
1000 waiter.WaitForStream(); | 1000 waiter.WaitForStream(); |
1001 EXPECT_TRUE(waiter.stream_done()); | 1001 EXPECT_TRUE(waiter.stream_done()); |
1002 EXPECT_TRUE(NULL == waiter.stream()); | 1002 EXPECT_TRUE(NULL == waiter.stream()); |
(...skipping 27 matching lines...) Expand all Loading... |
1030 // Now request a stream. | 1030 // Now request a stream. |
1031 HttpRequestInfo request_info; | 1031 HttpRequestInfo request_info; |
1032 request_info.method = "GET"; | 1032 request_info.method = "GET"; |
1033 request_info.url = GURL("ws://www.google.com"); | 1033 request_info.url = GURL("ws://www.google.com"); |
1034 request_info.load_flags = 0; | 1034 request_info.load_flags = 0; |
1035 | 1035 |
1036 SSLConfig ssl_config; | 1036 SSLConfig ssl_config; |
1037 StreamRequestWaiter waiter; | 1037 StreamRequestWaiter waiter; |
1038 WebSocketStreamCreateHelper create_helper; | 1038 WebSocketStreamCreateHelper create_helper; |
1039 scoped_ptr<HttpStreamRequest> request( | 1039 scoped_ptr<HttpStreamRequest> request( |
1040 session->websocket_handshake_stream_factory() | 1040 session->http_stream_factory_for_websocket() |
1041 ->RequestWebSocketHandshakeStream(request_info, | 1041 ->RequestWebSocketHandshakeStream(request_info, |
1042 DEFAULT_PRIORITY, | 1042 DEFAULT_PRIORITY, |
1043 ssl_config, | 1043 ssl_config, |
1044 ssl_config, | 1044 ssl_config, |
1045 &waiter, | 1045 &waiter, |
1046 &create_helper, | 1046 &create_helper, |
1047 BoundNetLog())); | 1047 BoundNetLog())); |
1048 waiter.WaitForStream(); | 1048 waiter.WaitForStream(); |
1049 EXPECT_TRUE(waiter.stream_done()); | 1049 EXPECT_TRUE(waiter.stream_done()); |
1050 EXPECT_TRUE(NULL == waiter.stream()); | 1050 EXPECT_TRUE(NULL == waiter.stream()); |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1144 // Now request a stream. | 1144 // Now request a stream. |
1145 HttpRequestInfo request_info; | 1145 HttpRequestInfo request_info; |
1146 request_info.method = "GET"; | 1146 request_info.method = "GET"; |
1147 request_info.url = GURL("wss://www.google.com"); | 1147 request_info.url = GURL("wss://www.google.com"); |
1148 request_info.load_flags = 0; | 1148 request_info.load_flags = 0; |
1149 | 1149 |
1150 SSLConfig ssl_config; | 1150 SSLConfig ssl_config; |
1151 StreamRequestWaiter waiter1; | 1151 StreamRequestWaiter waiter1; |
1152 WebSocketStreamCreateHelper create_helper; | 1152 WebSocketStreamCreateHelper create_helper; |
1153 scoped_ptr<HttpStreamRequest> request1( | 1153 scoped_ptr<HttpStreamRequest> request1( |
1154 session->websocket_handshake_stream_factory() | 1154 session->http_stream_factory_for_websocket() |
1155 ->RequestWebSocketHandshakeStream(request_info, | 1155 ->RequestWebSocketHandshakeStream(request_info, |
1156 DEFAULT_PRIORITY, | 1156 DEFAULT_PRIORITY, |
1157 ssl_config, | 1157 ssl_config, |
1158 ssl_config, | 1158 ssl_config, |
1159 &waiter1, | 1159 &waiter1, |
1160 &create_helper, | 1160 &create_helper, |
1161 BoundNetLog())); | 1161 BoundNetLog())); |
1162 waiter1.WaitForStream(); | 1162 waiter1.WaitForStream(); |
1163 EXPECT_TRUE(waiter1.stream_done()); | 1163 EXPECT_TRUE(waiter1.stream_done()); |
1164 ASSERT_TRUE(NULL != waiter1.websocket_stream()); | 1164 ASSERT_TRUE(NULL != waiter1.websocket_stream()); |
1165 EXPECT_EQ(MockWebSocketHandshakeStream::kStreamTypeSpdy, | 1165 EXPECT_EQ(MockWebSocketHandshakeStream::kStreamTypeSpdy, |
1166 waiter1.websocket_stream()->type()); | 1166 waiter1.websocket_stream()->type()); |
1167 EXPECT_TRUE(NULL == waiter1.stream()); | 1167 EXPECT_TRUE(NULL == waiter1.stream()); |
1168 | 1168 |
1169 StreamRequestWaiter waiter2; | 1169 StreamRequestWaiter waiter2; |
1170 scoped_ptr<HttpStreamRequest> request2( | 1170 scoped_ptr<HttpStreamRequest> request2( |
1171 session->websocket_handshake_stream_factory() | 1171 session->http_stream_factory_for_websocket() |
1172 ->RequestWebSocketHandshakeStream(request_info, | 1172 ->RequestWebSocketHandshakeStream(request_info, |
1173 DEFAULT_PRIORITY, | 1173 DEFAULT_PRIORITY, |
1174 ssl_config, | 1174 ssl_config, |
1175 ssl_config, | 1175 ssl_config, |
1176 &waiter2, | 1176 &waiter2, |
1177 &create_helper, | 1177 &create_helper, |
1178 BoundNetLog())); | 1178 BoundNetLog())); |
1179 waiter2.WaitForStream(); | 1179 waiter2.WaitForStream(); |
1180 EXPECT_TRUE(waiter2.stream_done()); | 1180 EXPECT_TRUE(waiter2.stream_done()); |
1181 ASSERT_TRUE(NULL != waiter2.websocket_stream()); | 1181 ASSERT_TRUE(NULL != waiter2.websocket_stream()); |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1234 | 1234 |
1235 session->http_server_properties()->SetAlternateProtocol( | 1235 session->http_server_properties()->SetAlternateProtocol( |
1236 HostPortPair("www.google.com", 8888), | 1236 HostPortPair("www.google.com", 8888), |
1237 9999, | 1237 9999, |
1238 NPN_SPDY_3); | 1238 NPN_SPDY_3); |
1239 | 1239 |
1240 SSLConfig ssl_config; | 1240 SSLConfig ssl_config; |
1241 StreamRequestWaiter waiter; | 1241 StreamRequestWaiter waiter; |
1242 WebSocketStreamCreateHelper create_helper; | 1242 WebSocketStreamCreateHelper create_helper; |
1243 scoped_ptr<HttpStreamRequest> request( | 1243 scoped_ptr<HttpStreamRequest> request( |
1244 session->websocket_handshake_stream_factory() | 1244 session->http_stream_factory_for_websocket() |
1245 ->RequestWebSocketHandshakeStream(request_info, | 1245 ->RequestWebSocketHandshakeStream(request_info, |
1246 DEFAULT_PRIORITY, | 1246 DEFAULT_PRIORITY, |
1247 ssl_config, | 1247 ssl_config, |
1248 ssl_config, | 1248 ssl_config, |
1249 &waiter, | 1249 &waiter, |
1250 &create_helper, | 1250 &create_helper, |
1251 BoundNetLog())); | 1251 BoundNetLog())); |
1252 waiter.WaitForStream(); | 1252 waiter.WaitForStream(); |
1253 EXPECT_TRUE(waiter.stream_done()); | 1253 EXPECT_TRUE(waiter.stream_done()); |
1254 EXPECT_TRUE(NULL == waiter.stream()); | 1254 EXPECT_TRUE(NULL == waiter.stream()); |
1255 ASSERT_TRUE(NULL != waiter.websocket_stream()); | 1255 ASSERT_TRUE(NULL != waiter.websocket_stream()); |
1256 EXPECT_EQ(MockWebSocketHandshakeStream::kStreamTypeSpdy, | 1256 EXPECT_EQ(MockWebSocketHandshakeStream::kStreamTypeSpdy, |
1257 waiter.websocket_stream()->type()); | 1257 waiter.websocket_stream()->type()); |
1258 | 1258 |
1259 // Make sure that there was an alternative connection | 1259 // Make sure that there was an alternative connection |
1260 // which consumes extra connections. | 1260 // which consumes extra connections. |
1261 EXPECT_EQ(0, GetSocketPoolGroupCount( | 1261 EXPECT_EQ(0, GetSocketPoolGroupCount( |
1262 session->GetTransportSocketPool(HttpNetworkSession::NORMAL_SOCKET_POOL))); | 1262 session->GetTransportSocketPool(HttpNetworkSession::NORMAL_SOCKET_POOL))); |
1263 EXPECT_EQ(0, GetSocketPoolGroupCount( | 1263 EXPECT_EQ(0, GetSocketPoolGroupCount( |
1264 session->GetSSLSocketPool(HttpNetworkSession::NORMAL_SOCKET_POOL))); | 1264 session->GetSSLSocketPool(HttpNetworkSession::NORMAL_SOCKET_POOL))); |
1265 EXPECT_EQ(2, GetSocketPoolGroupCount( | 1265 EXPECT_EQ(2, GetSocketPoolGroupCount( |
1266 session->GetTransportSocketPool( | 1266 session->GetTransportSocketPool( |
1267 HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); | 1267 HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); |
1268 EXPECT_EQ(1, GetSocketPoolGroupCount( | 1268 EXPECT_EQ(1, GetSocketPoolGroupCount( |
1269 session->GetSSLSocketPool(HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); | 1269 session->GetSSLSocketPool(HttpNetworkSession::WEBSOCKET_SOCKET_POOL))); |
1270 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); | 1270 EXPECT_TRUE(waiter.used_proxy_info().is_direct()); |
1271 | 1271 |
1272 // Make sure there is no orphaned job. it is already canceled. | 1272 // Make sure there is no orphaned job. it is already canceled. |
1273 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( | 1273 ASSERT_EQ(0u, static_cast<HttpStreamFactoryImpl*>( |
1274 session->websocket_handshake_stream_factory())->num_orphaned_jobs()); | 1274 session->http_stream_factory_for_websocket())->num_orphaned_jobs()); |
1275 } | 1275 } |
1276 | 1276 |
1277 } // namespace | 1277 } // namespace |
1278 | 1278 |
1279 } // namespace net | 1279 } // namespace net |
OLD | NEW |