Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: net/socket/socks_client_socket_pool_unittest.cc

Issue 2351513002: net: rename BoundNetLog to NetLogWithSource (Closed)
Patch Set: one more fix, content bound_net_log_ Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/socket/socks_client_socket_pool.h" 5 #include "net/socket/socks_client_socket_pool.h"
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
130 }; 130 };
131 131
132 TEST_F(SOCKSClientSocketPoolTest, Simple) { 132 TEST_F(SOCKSClientSocketPoolTest, Simple) {
133 SOCKS5MockData data(SYNCHRONOUS); 133 SOCKS5MockData data(SYNCHRONOUS);
134 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK)); 134 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK));
135 transport_client_socket_factory_.AddSocketDataProvider(data.data_provider()); 135 transport_client_socket_factory_.AddSocketDataProvider(data.data_provider());
136 136
137 ClientSocketHandle handle; 137 ClientSocketHandle handle;
138 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 138 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
139 ClientSocketPool::RespectLimits::ENABLED, 139 ClientSocketPool::RespectLimits::ENABLED,
140 CompletionCallback(), &pool_, BoundNetLog()); 140 CompletionCallback(), &pool_, NetLogWithSource());
141 EXPECT_THAT(rv, IsOk()); 141 EXPECT_THAT(rv, IsOk());
142 EXPECT_TRUE(handle.is_initialized()); 142 EXPECT_TRUE(handle.is_initialized());
143 EXPECT_TRUE(handle.socket()); 143 EXPECT_TRUE(handle.socket());
144 TestLoadTimingInfo(handle); 144 TestLoadTimingInfo(handle);
145 } 145 }
146 146
147 // Make sure that SOCKSConnectJob passes on its priority to its 147 // Make sure that SOCKSConnectJob passes on its priority to its
148 // socket request on Init. 148 // socket request on Init.
149 TEST_F(SOCKSClientSocketPoolTest, SetSocketRequestPriorityOnInit) { 149 TEST_F(SOCKSClientSocketPoolTest, SetSocketRequestPriorityOnInit) {
150 for (int i = MINIMUM_PRIORITY; i <= MAXIMUM_PRIORITY; ++i) { 150 for (int i = MINIMUM_PRIORITY; i <= MAXIMUM_PRIORITY; ++i) {
151 RequestPriority priority = static_cast<RequestPriority>(i); 151 RequestPriority priority = static_cast<RequestPriority>(i);
152 SOCKS5MockData data(SYNCHRONOUS); 152 SOCKS5MockData data(SYNCHRONOUS);
153 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK)); 153 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK));
154 transport_client_socket_factory_.AddSocketDataProvider( 154 transport_client_socket_factory_.AddSocketDataProvider(
155 data.data_provider()); 155 data.data_provider());
156 156
157 ClientSocketHandle handle; 157 ClientSocketHandle handle;
158 EXPECT_EQ(OK, handle.Init("a", CreateSOCKSv5Params(), priority, 158 EXPECT_EQ(OK,
159 ClientSocketPool::RespectLimits::ENABLED, 159 handle.Init("a", CreateSOCKSv5Params(), priority,
160 CompletionCallback(), &pool_, BoundNetLog())); 160 ClientSocketPool::RespectLimits::ENABLED,
161 CompletionCallback(), &pool_, NetLogWithSource()));
161 EXPECT_EQ(priority, transport_socket_pool_.last_request_priority()); 162 EXPECT_EQ(priority, transport_socket_pool_.last_request_priority());
162 handle.socket()->Disconnect(); 163 handle.socket()->Disconnect();
163 } 164 }
164 } 165 }
165 166
166 // Make sure that SOCKSConnectJob passes on its priority to its 167 // Make sure that SOCKSConnectJob passes on its priority to its
167 // HostResolver request (for non-SOCKS5) on Init. 168 // HostResolver request (for non-SOCKS5) on Init.
168 TEST_F(SOCKSClientSocketPoolTest, SetResolvePriorityOnInit) { 169 TEST_F(SOCKSClientSocketPoolTest, SetResolvePriorityOnInit) {
169 for (int i = MINIMUM_PRIORITY; i <= MAXIMUM_PRIORITY; ++i) { 170 for (int i = MINIMUM_PRIORITY; i <= MAXIMUM_PRIORITY; ++i) {
170 RequestPriority priority = static_cast<RequestPriority>(i); 171 RequestPriority priority = static_cast<RequestPriority>(i);
171 SOCKS5MockData data(SYNCHRONOUS); 172 SOCKS5MockData data(SYNCHRONOUS);
172 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK)); 173 data.data_provider()->set_connect_data(MockConnect(SYNCHRONOUS, OK));
173 transport_client_socket_factory_.AddSocketDataProvider( 174 transport_client_socket_factory_.AddSocketDataProvider(
174 data.data_provider()); 175 data.data_provider());
175 176
176 ClientSocketHandle handle; 177 ClientSocketHandle handle;
177 EXPECT_EQ(ERR_IO_PENDING, 178 EXPECT_EQ(ERR_IO_PENDING,
178 handle.Init("a", CreateSOCKSv4Params(), priority, 179 handle.Init("a", CreateSOCKSv4Params(), priority,
179 ClientSocketPool::RespectLimits::ENABLED, 180 ClientSocketPool::RespectLimits::ENABLED,
180 CompletionCallback(), &pool_, BoundNetLog())); 181 CompletionCallback(), &pool_, NetLogWithSource()));
181 EXPECT_EQ(priority, transport_socket_pool_.last_request_priority()); 182 EXPECT_EQ(priority, transport_socket_pool_.last_request_priority());
182 EXPECT_EQ(priority, host_resolver_.last_request_priority()); 183 EXPECT_EQ(priority, host_resolver_.last_request_priority());
183 EXPECT_TRUE(handle.socket() == NULL); 184 EXPECT_TRUE(handle.socket() == NULL);
184 } 185 }
185 } 186 }
186 187
187 TEST_F(SOCKSClientSocketPoolTest, Async) { 188 TEST_F(SOCKSClientSocketPoolTest, Async) {
188 SOCKS5MockData data(ASYNC); 189 SOCKS5MockData data(ASYNC);
189 transport_client_socket_factory_.AddSocketDataProvider(data.data_provider()); 190 transport_client_socket_factory_.AddSocketDataProvider(data.data_provider());
190 191
191 TestCompletionCallback callback; 192 TestCompletionCallback callback;
192 ClientSocketHandle handle; 193 ClientSocketHandle handle;
193 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 194 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
194 ClientSocketPool::RespectLimits::ENABLED, 195 ClientSocketPool::RespectLimits::ENABLED,
195 callback.callback(), &pool_, BoundNetLog()); 196 callback.callback(), &pool_, NetLogWithSource());
196 EXPECT_THAT(rv, IsError(ERR_IO_PENDING)); 197 EXPECT_THAT(rv, IsError(ERR_IO_PENDING));
197 EXPECT_FALSE(handle.is_initialized()); 198 EXPECT_FALSE(handle.is_initialized());
198 EXPECT_FALSE(handle.socket()); 199 EXPECT_FALSE(handle.socket());
199 200
200 EXPECT_THAT(callback.WaitForResult(), IsOk()); 201 EXPECT_THAT(callback.WaitForResult(), IsOk());
201 EXPECT_TRUE(handle.is_initialized()); 202 EXPECT_TRUE(handle.is_initialized());
202 EXPECT_TRUE(handle.socket()); 203 EXPECT_TRUE(handle.socket());
203 TestLoadTimingInfo(handle); 204 TestLoadTimingInfo(handle);
204 } 205 }
205 206
206 TEST_F(SOCKSClientSocketPoolTest, TransportConnectError) { 207 TEST_F(SOCKSClientSocketPoolTest, TransportConnectError) {
207 StaticSocketDataProvider socket_data; 208 StaticSocketDataProvider socket_data;
208 socket_data.set_connect_data(MockConnect(SYNCHRONOUS, 209 socket_data.set_connect_data(MockConnect(SYNCHRONOUS,
209 ERR_CONNECTION_REFUSED)); 210 ERR_CONNECTION_REFUSED));
210 transport_client_socket_factory_.AddSocketDataProvider(&socket_data); 211 transport_client_socket_factory_.AddSocketDataProvider(&socket_data);
211 212
212 ClientSocketHandle handle; 213 ClientSocketHandle handle;
213 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 214 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
214 ClientSocketPool::RespectLimits::ENABLED, 215 ClientSocketPool::RespectLimits::ENABLED,
215 CompletionCallback(), &pool_, BoundNetLog()); 216 CompletionCallback(), &pool_, NetLogWithSource());
216 EXPECT_THAT(rv, IsError(ERR_PROXY_CONNECTION_FAILED)); 217 EXPECT_THAT(rv, IsError(ERR_PROXY_CONNECTION_FAILED));
217 EXPECT_FALSE(handle.is_initialized()); 218 EXPECT_FALSE(handle.is_initialized());
218 EXPECT_FALSE(handle.socket()); 219 EXPECT_FALSE(handle.socket());
219 } 220 }
220 221
221 TEST_F(SOCKSClientSocketPoolTest, AsyncTransportConnectError) { 222 TEST_F(SOCKSClientSocketPoolTest, AsyncTransportConnectError) {
222 StaticSocketDataProvider socket_data; 223 StaticSocketDataProvider socket_data;
223 socket_data.set_connect_data(MockConnect(ASYNC, ERR_CONNECTION_REFUSED)); 224 socket_data.set_connect_data(MockConnect(ASYNC, ERR_CONNECTION_REFUSED));
224 transport_client_socket_factory_.AddSocketDataProvider(&socket_data); 225 transport_client_socket_factory_.AddSocketDataProvider(&socket_data);
225 226
226 TestCompletionCallback callback; 227 TestCompletionCallback callback;
227 ClientSocketHandle handle; 228 ClientSocketHandle handle;
228 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 229 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
229 ClientSocketPool::RespectLimits::ENABLED, 230 ClientSocketPool::RespectLimits::ENABLED,
230 callback.callback(), &pool_, BoundNetLog()); 231 callback.callback(), &pool_, NetLogWithSource());
231 EXPECT_THAT(rv, IsError(ERR_IO_PENDING)); 232 EXPECT_THAT(rv, IsError(ERR_IO_PENDING));
232 EXPECT_FALSE(handle.is_initialized()); 233 EXPECT_FALSE(handle.is_initialized());
233 EXPECT_FALSE(handle.socket()); 234 EXPECT_FALSE(handle.socket());
234 235
235 EXPECT_THAT(callback.WaitForResult(), IsError(ERR_PROXY_CONNECTION_FAILED)); 236 EXPECT_THAT(callback.WaitForResult(), IsError(ERR_PROXY_CONNECTION_FAILED));
236 EXPECT_FALSE(handle.is_initialized()); 237 EXPECT_FALSE(handle.is_initialized());
237 EXPECT_FALSE(handle.socket()); 238 EXPECT_FALSE(handle.socket());
238 } 239 }
239 240
240 TEST_F(SOCKSClientSocketPoolTest, SOCKSConnectError) { 241 TEST_F(SOCKSClientSocketPoolTest, SOCKSConnectError) {
241 MockRead failed_read[] = { 242 MockRead failed_read[] = {
242 MockRead(SYNCHRONOUS, 0), 243 MockRead(SYNCHRONOUS, 0),
243 }; 244 };
244 StaticSocketDataProvider socket_data( 245 StaticSocketDataProvider socket_data(
245 failed_read, arraysize(failed_read), NULL, 0); 246 failed_read, arraysize(failed_read), NULL, 0);
246 socket_data.set_connect_data(MockConnect(SYNCHRONOUS, OK)); 247 socket_data.set_connect_data(MockConnect(SYNCHRONOUS, OK));
247 transport_client_socket_factory_.AddSocketDataProvider(&socket_data); 248 transport_client_socket_factory_.AddSocketDataProvider(&socket_data);
248 249
249 ClientSocketHandle handle; 250 ClientSocketHandle handle;
250 EXPECT_EQ(0, transport_socket_pool_.release_count()); 251 EXPECT_EQ(0, transport_socket_pool_.release_count());
251 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 252 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
252 ClientSocketPool::RespectLimits::ENABLED, 253 ClientSocketPool::RespectLimits::ENABLED,
253 CompletionCallback(), &pool_, BoundNetLog()); 254 CompletionCallback(), &pool_, NetLogWithSource());
254 EXPECT_THAT(rv, IsError(ERR_SOCKS_CONNECTION_FAILED)); 255 EXPECT_THAT(rv, IsError(ERR_SOCKS_CONNECTION_FAILED));
255 EXPECT_FALSE(handle.is_initialized()); 256 EXPECT_FALSE(handle.is_initialized());
256 EXPECT_FALSE(handle.socket()); 257 EXPECT_FALSE(handle.socket());
257 EXPECT_EQ(1, transport_socket_pool_.release_count()); 258 EXPECT_EQ(1, transport_socket_pool_.release_count());
258 } 259 }
259 260
260 TEST_F(SOCKSClientSocketPoolTest, AsyncSOCKSConnectError) { 261 TEST_F(SOCKSClientSocketPoolTest, AsyncSOCKSConnectError) {
261 MockRead failed_read[] = { 262 MockRead failed_read[] = {
262 MockRead(ASYNC, 0), 263 MockRead(ASYNC, 0),
263 }; 264 };
264 StaticSocketDataProvider socket_data( 265 StaticSocketDataProvider socket_data(
265 failed_read, arraysize(failed_read), NULL, 0); 266 failed_read, arraysize(failed_read), NULL, 0);
266 socket_data.set_connect_data(MockConnect(SYNCHRONOUS, OK)); 267 socket_data.set_connect_data(MockConnect(SYNCHRONOUS, OK));
267 transport_client_socket_factory_.AddSocketDataProvider(&socket_data); 268 transport_client_socket_factory_.AddSocketDataProvider(&socket_data);
268 269
269 TestCompletionCallback callback; 270 TestCompletionCallback callback;
270 ClientSocketHandle handle; 271 ClientSocketHandle handle;
271 EXPECT_EQ(0, transport_socket_pool_.release_count()); 272 EXPECT_EQ(0, transport_socket_pool_.release_count());
272 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW, 273 int rv = handle.Init("a", CreateSOCKSv5Params(), LOW,
273 ClientSocketPool::RespectLimits::ENABLED, 274 ClientSocketPool::RespectLimits::ENABLED,
274 callback.callback(), &pool_, BoundNetLog()); 275 callback.callback(), &pool_, NetLogWithSource());
275 EXPECT_THAT(rv, IsError(ERR_IO_PENDING)); 276 EXPECT_THAT(rv, IsError(ERR_IO_PENDING));
276 EXPECT_FALSE(handle.is_initialized()); 277 EXPECT_FALSE(handle.is_initialized());
277 EXPECT_FALSE(handle.socket()); 278 EXPECT_FALSE(handle.socket());
278 279
279 EXPECT_THAT(callback.WaitForResult(), IsError(ERR_SOCKS_CONNECTION_FAILED)); 280 EXPECT_THAT(callback.WaitForResult(), IsError(ERR_SOCKS_CONNECTION_FAILED));
280 EXPECT_FALSE(handle.is_initialized()); 281 EXPECT_FALSE(handle.is_initialized());
281 EXPECT_FALSE(handle.socket()); 282 EXPECT_FALSE(handle.socket());
282 EXPECT_EQ(1, transport_socket_pool_.release_count()); 283 EXPECT_EQ(1, transport_socket_pool_.release_count());
283 } 284 }
284 285
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
349 350
350 (*requests())[0]->handle()->Reset(); 351 (*requests())[0]->handle()->Reset();
351 (*requests())[1]->handle()->Reset(); 352 (*requests())[1]->handle()->Reset();
352 } 353 }
353 354
354 // It would be nice to also test the timeouts in SOCKSClientSocketPool. 355 // It would be nice to also test the timeouts in SOCKSClientSocketPool.
355 356
356 } // namespace 357 } // namespace
357 358
358 } // namespace net 359 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698