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

Side by Side Diff: net/url_request/url_request_ftp_job_unittest.cc

Issue 51953002: [Net] Add a priority parameter to URLRequest's constructor (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments Created 7 years, 1 month 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 | Annotate | Revision Log
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/url_request/url_request_ftp_job.h" 5 #include "net/url_request/url_request_ftp_job.h"
6 6
7 #include "base/memory/ref_counted.h" 7 #include "base/memory/ref_counted.h"
8 #include "base/memory/scoped_vector.h" 8 #include "base/memory/scoped_vector.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "net/base/request_priority.h"
10 #include "net/ftp/ftp_auth_cache.h" 11 #include "net/ftp/ftp_auth_cache.h"
11 #include "net/http/http_transaction_unittest.h" 12 #include "net/http/http_transaction_unittest.h"
12 #include "net/proxy/mock_proxy_resolver.h" 13 #include "net/proxy/mock_proxy_resolver.h"
13 #include "net/proxy/proxy_config_service.h" 14 #include "net/proxy/proxy_config_service.h"
14 #include "net/proxy/proxy_config_service_fixed.h" 15 #include "net/proxy/proxy_config_service_fixed.h"
15 #include "net/socket/socket_test_util.h" 16 #include "net/socket/socket_test_util.h"
16 #include "net/url_request/ftp_protocol_handler.h" 17 #include "net/url_request/ftp_protocol_handler.h"
17 #include "net/url_request/url_request.h" 18 #include "net/url_request/url_request.h"
18 #include "net/url_request/url_request_context.h" 19 #include "net/url_request/url_request_context.h"
19 #include "net/url_request/url_request_job_factory_impl.h" 20 #include "net/url_request/url_request_job_factory_impl.h"
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 115
115 virtual void Suspend(bool suspend) OVERRIDE {} 116 virtual void Suspend(bool suspend) OVERRIDE {}
116 }; 117 };
117 118
118 // Fixture for priority-related tests. Priority matters when there is 119 // Fixture for priority-related tests. Priority matters when there is
119 // an HTTP proxy. 120 // an HTTP proxy.
120 class URLRequestFtpJobPriorityTest : public testing::Test { 121 class URLRequestFtpJobPriorityTest : public testing::Test {
121 protected: 122 protected:
122 URLRequestFtpJobPriorityTest() 123 URLRequestFtpJobPriorityTest()
123 : proxy_service_(new SimpleProxyConfigService, NULL, NULL), 124 : proxy_service_(new SimpleProxyConfigService, NULL, NULL),
124 req_(GURL("ftp://ftp.example.com"), &delegate_, &context_, NULL) { 125 req_(GURL("ftp://ftp.example.com"),
126 DEFAULT_PRIORITY,
127 &delegate_,
128 &context_) {
125 context_.set_proxy_service(&proxy_service_); 129 context_.set_proxy_service(&proxy_service_);
126 context_.set_http_transaction_factory(&network_layer_); 130 context_.set_http_transaction_factory(&network_layer_);
127 } 131 }
128 132
129 ProxyService proxy_service_; 133 ProxyService proxy_service_;
130 MockNetworkLayer network_layer_; 134 MockNetworkLayer network_layer_;
131 MockFtpTransactionFactory ftp_factory_; 135 MockFtpTransactionFactory ftp_factory_;
132 FtpAuthCache ftp_auth_cache_; 136 FtpAuthCache ftp_auth_cache_;
133 TestURLRequestContext context_; 137 TestURLRequestContext context_;
134 TestDelegate delegate_; 138 TestDelegate delegate_;
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 MockRead reads[] = { 259 MockRead reads[] = {
256 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"), 260 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"),
257 MockRead(ASYNC, 2, "Content-Length: 9\r\n\r\n"), 261 MockRead(ASYNC, 2, "Content-Length: 9\r\n\r\n"),
258 MockRead(ASYNC, 3, "test.html"), 262 MockRead(ASYNC, 3, "test.html"),
259 }; 263 };
260 264
261 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 265 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
262 266
263 TestDelegate request_delegate; 267 TestDelegate request_delegate;
264 URLRequest url_request(GURL("ftp://ftp.example.com/"), 268 URLRequest url_request(GURL("ftp://ftp.example.com/"),
269 DEFAULT_PRIORITY,
265 &request_delegate, 270 &request_delegate,
266 request_context(), 271 request_context());
267 network_delegate());
268 url_request.Start(); 272 url_request.Start();
269 ASSERT_TRUE(url_request.is_pending()); 273 ASSERT_TRUE(url_request.is_pending());
270 socket_data(0)->RunFor(4); 274 socket_data(0)->RunFor(4);
271 275
272 EXPECT_TRUE(url_request.status().is_success()); 276 EXPECT_TRUE(url_request.status().is_success());
273 EXPECT_EQ(1, network_delegate()->completed_requests()); 277 EXPECT_EQ(1, network_delegate()->completed_requests());
274 EXPECT_EQ(0, network_delegate()->error_count()); 278 EXPECT_EQ(0, network_delegate()->error_count());
275 EXPECT_FALSE(request_delegate.auth_required_called()); 279 EXPECT_FALSE(request_delegate.auth_required_called());
276 EXPECT_EQ("test.html", request_delegate.data_received()); 280 EXPECT_EQ("test.html", request_delegate.data_received());
277 } 281 }
278 282
279 // Regression test for http://crbug.com/237526 . 283 // Regression test for http://crbug.com/237526 .
280 TEST_F(URLRequestFtpJobTest, FtpProxyRequestOrphanJob) { 284 TEST_F(URLRequestFtpJobTest, FtpProxyRequestOrphanJob) {
281 // Use a PAC URL so that URLRequestFtpJob's |pac_request_| field is non-NULL. 285 // Use a PAC URL so that URLRequestFtpJob's |pac_request_| field is non-NULL.
282 request_context()->set_proxy_service( 286 request_context()->set_proxy_service(
283 new ProxyService( 287 new ProxyService(
284 new ProxyConfigServiceFixed( 288 new ProxyConfigServiceFixed(
285 ProxyConfig::CreateFromCustomPacURL(GURL("http://foo"))), 289 ProxyConfig::CreateFromCustomPacURL(GURL("http://foo"))),
286 new MockAsyncProxyResolver, NULL)); 290 new MockAsyncProxyResolver, NULL));
287 291
288 TestDelegate request_delegate; 292 TestDelegate request_delegate;
289 URLRequest url_request(GURL("ftp://ftp.example.com/"), 293 URLRequest url_request(GURL("ftp://ftp.example.com/"),
294 DEFAULT_PRIORITY,
290 &request_delegate, 295 &request_delegate,
291 request_context(), 296 request_context());
292 network_delegate());
293 url_request.Start(); 297 url_request.Start();
294 298
295 // Now |url_request| will be deleted before its completion, 299 // Now |url_request| will be deleted before its completion,
296 // resulting in it being orphaned. It should not crash. 300 // resulting in it being orphaned. It should not crash.
297 } 301 }
298 302
299 TEST_F(URLRequestFtpJobTest, FtpProxyRequestNeedProxyAuthNoCredentials) { 303 TEST_F(URLRequestFtpJobTest, FtpProxyRequestNeedProxyAuthNoCredentials) {
300 MockWrite writes[] = { 304 MockWrite writes[] = {
301 MockWrite(ASYNC, 0, "GET ftp://ftp.example.com/ HTTP/1.1\r\n" 305 MockWrite(ASYNC, 0, "GET ftp://ftp.example.com/ HTTP/1.1\r\n"
302 "Host: ftp.example.com\r\n" 306 "Host: ftp.example.com\r\n"
303 "Proxy-Connection: keep-alive\r\n\r\n"), 307 "Proxy-Connection: keep-alive\r\n\r\n"),
304 }; 308 };
305 MockRead reads[] = { 309 MockRead reads[] = {
306 // No credentials. 310 // No credentials.
307 MockRead(ASYNC, 1, "HTTP/1.1 407 Proxy Authentication Required\r\n"), 311 MockRead(ASYNC, 1, "HTTP/1.1 407 Proxy Authentication Required\r\n"),
308 MockRead(ASYNC, 2, "Proxy-Authenticate: Basic " 312 MockRead(ASYNC, 2, "Proxy-Authenticate: Basic "
309 "realm=\"MyRealm1\"\r\n"), 313 "realm=\"MyRealm1\"\r\n"),
310 MockRead(ASYNC, 3, "Content-Length: 9\r\n\r\n"), 314 MockRead(ASYNC, 3, "Content-Length: 9\r\n\r\n"),
311 MockRead(ASYNC, 4, "test.html"), 315 MockRead(ASYNC, 4, "test.html"),
312 }; 316 };
313 317
314 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 318 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
315 319
316 TestDelegate request_delegate; 320 TestDelegate request_delegate;
317 URLRequest url_request(GURL("ftp://ftp.example.com/"), 321 URLRequest url_request(GURL("ftp://ftp.example.com/"),
322 DEFAULT_PRIORITY,
318 &request_delegate, 323 &request_delegate,
319 request_context(), 324 request_context());
320 network_delegate());
321 url_request.Start(); 325 url_request.Start();
322 ASSERT_TRUE(url_request.is_pending()); 326 ASSERT_TRUE(url_request.is_pending());
323 socket_data(0)->RunFor(5); 327 socket_data(0)->RunFor(5);
324 328
325 EXPECT_TRUE(url_request.status().is_success()); 329 EXPECT_TRUE(url_request.status().is_success());
326 EXPECT_EQ(1, network_delegate()->completed_requests()); 330 EXPECT_EQ(1, network_delegate()->completed_requests());
327 EXPECT_EQ(0, network_delegate()->error_count()); 331 EXPECT_EQ(0, network_delegate()->error_count());
328 EXPECT_TRUE(request_delegate.auth_required_called()); 332 EXPECT_TRUE(request_delegate.auth_required_called());
329 EXPECT_EQ("test.html", request_delegate.data_received()); 333 EXPECT_EQ("test.html", request_delegate.data_received());
330 } 334 }
(...skipping 21 matching lines...) Expand all
352 MockRead(ASYNC, 7, "Content-Length: 10\r\n\r\n"), 356 MockRead(ASYNC, 7, "Content-Length: 10\r\n\r\n"),
353 MockRead(ASYNC, 8, "test2.html"), 357 MockRead(ASYNC, 8, "test2.html"),
354 }; 358 };
355 359
356 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 360 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
357 361
358 TestDelegate request_delegate; 362 TestDelegate request_delegate;
359 request_delegate.set_credentials( 363 request_delegate.set_credentials(
360 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass"))); 364 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass")));
361 URLRequest url_request(GURL("ftp://ftp.example.com/"), 365 URLRequest url_request(GURL("ftp://ftp.example.com/"),
366 DEFAULT_PRIORITY,
362 &request_delegate, 367 &request_delegate,
363 request_context(), 368 request_context());
364 network_delegate());
365 url_request.Start(); 369 url_request.Start();
366 ASSERT_TRUE(url_request.is_pending()); 370 ASSERT_TRUE(url_request.is_pending());
367 socket_data(0)->RunFor(9); 371 socket_data(0)->RunFor(9);
368 372
369 EXPECT_TRUE(url_request.status().is_success()); 373 EXPECT_TRUE(url_request.status().is_success());
370 EXPECT_EQ(1, network_delegate()->completed_requests()); 374 EXPECT_EQ(1, network_delegate()->completed_requests());
371 EXPECT_EQ(0, network_delegate()->error_count()); 375 EXPECT_EQ(0, network_delegate()->error_count());
372 EXPECT_TRUE(request_delegate.auth_required_called()); 376 EXPECT_TRUE(request_delegate.auth_required_called());
373 EXPECT_EQ("test2.html", request_delegate.data_received()); 377 EXPECT_EQ("test2.html", request_delegate.data_received());
374 } 378 }
(...skipping 10 matching lines...) Expand all
385 MockRead(ASYNC, 2, "WWW-Authenticate: Basic " 389 MockRead(ASYNC, 2, "WWW-Authenticate: Basic "
386 "realm=\"MyRealm1\"\r\n"), 390 "realm=\"MyRealm1\"\r\n"),
387 MockRead(ASYNC, 3, "Content-Length: 9\r\n\r\n"), 391 MockRead(ASYNC, 3, "Content-Length: 9\r\n\r\n"),
388 MockRead(ASYNC, 4, "test.html"), 392 MockRead(ASYNC, 4, "test.html"),
389 }; 393 };
390 394
391 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 395 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
392 396
393 TestDelegate request_delegate; 397 TestDelegate request_delegate;
394 URLRequest url_request(GURL("ftp://ftp.example.com/"), 398 URLRequest url_request(GURL("ftp://ftp.example.com/"),
399 DEFAULT_PRIORITY,
395 &request_delegate, 400 &request_delegate,
396 request_context(), 401 request_context());
397 network_delegate());
398 url_request.Start(); 402 url_request.Start();
399 ASSERT_TRUE(url_request.is_pending()); 403 ASSERT_TRUE(url_request.is_pending());
400 socket_data(0)->RunFor(5); 404 socket_data(0)->RunFor(5);
401 405
402 EXPECT_TRUE(url_request.status().is_success()); 406 EXPECT_TRUE(url_request.status().is_success());
403 EXPECT_EQ(1, network_delegate()->completed_requests()); 407 EXPECT_EQ(1, network_delegate()->completed_requests());
404 EXPECT_EQ(0, network_delegate()->error_count()); 408 EXPECT_EQ(0, network_delegate()->error_count());
405 EXPECT_TRUE(request_delegate.auth_required_called()); 409 EXPECT_TRUE(request_delegate.auth_required_called());
406 EXPECT_EQ("test.html", request_delegate.data_received()); 410 EXPECT_EQ("test.html", request_delegate.data_received());
407 } 411 }
(...skipping 21 matching lines...) Expand all
429 MockRead(ASYNC, 7, "Content-Length: 10\r\n\r\n"), 433 MockRead(ASYNC, 7, "Content-Length: 10\r\n\r\n"),
430 MockRead(ASYNC, 8, "test2.html"), 434 MockRead(ASYNC, 8, "test2.html"),
431 }; 435 };
432 436
433 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 437 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
434 438
435 TestDelegate request_delegate; 439 TestDelegate request_delegate;
436 request_delegate.set_credentials( 440 request_delegate.set_credentials(
437 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass"))); 441 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass")));
438 URLRequest url_request(GURL("ftp://ftp.example.com/"), 442 URLRequest url_request(GURL("ftp://ftp.example.com/"),
443 DEFAULT_PRIORITY,
439 &request_delegate, 444 &request_delegate,
440 request_context(), 445 request_context());
441 network_delegate());
442 url_request.Start(); 446 url_request.Start();
443 ASSERT_TRUE(url_request.is_pending()); 447 ASSERT_TRUE(url_request.is_pending());
444 socket_data(0)->RunFor(9); 448 socket_data(0)->RunFor(9);
445 449
446 EXPECT_TRUE(url_request.status().is_success()); 450 EXPECT_TRUE(url_request.status().is_success());
447 EXPECT_EQ(1, network_delegate()->completed_requests()); 451 EXPECT_EQ(1, network_delegate()->completed_requests());
448 EXPECT_EQ(0, network_delegate()->error_count()); 452 EXPECT_EQ(0, network_delegate()->error_count());
449 EXPECT_TRUE(request_delegate.auth_required_called()); 453 EXPECT_TRUE(request_delegate.auth_required_called());
450 EXPECT_EQ("test2.html", request_delegate.data_received()); 454 EXPECT_EQ("test2.html", request_delegate.data_received());
451 } 455 }
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
494 498
495 // Make sure cached FTP credentials are not used for proxy authentication. 499 // Make sure cached FTP credentials are not used for proxy authentication.
496 request_context()->GetFtpAuthCache()->Add( 500 request_context()->GetFtpAuthCache()->Add(
497 url.GetOrigin(), 501 url.GetOrigin(),
498 AuthCredentials(ASCIIToUTF16("userdonotuse"), 502 AuthCredentials(ASCIIToUTF16("userdonotuse"),
499 ASCIIToUTF16("passworddonotuse"))); 503 ASCIIToUTF16("passworddonotuse")));
500 504
501 TestDelegate request_delegate; 505 TestDelegate request_delegate;
502 request_delegate.set_credentials( 506 request_delegate.set_credentials(
503 AuthCredentials(ASCIIToUTF16("proxyuser"), ASCIIToUTF16("proxypass"))); 507 AuthCredentials(ASCIIToUTF16("proxyuser"), ASCIIToUTF16("proxypass")));
504 URLRequest url_request(url, 508 URLRequest url_request(
505 &request_delegate, 509 url, DEFAULT_PRIORITY, &request_delegate, request_context());
506 request_context(),
507 network_delegate());
508 url_request.Start(); 510 url_request.Start();
509 ASSERT_TRUE(url_request.is_pending()); 511 ASSERT_TRUE(url_request.is_pending());
510 socket_data(0)->RunFor(5); 512 socket_data(0)->RunFor(5);
511 513
512 request_delegate.set_credentials( 514 request_delegate.set_credentials(
513 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass"))); 515 AuthCredentials(ASCIIToUTF16("myuser"), ASCIIToUTF16("mypass")));
514 socket_data(0)->RunFor(9); 516 socket_data(0)->RunFor(9);
515 517
516 EXPECT_TRUE(url_request.status().is_success()); 518 EXPECT_TRUE(url_request.status().is_success());
517 EXPECT_EQ(1, network_delegate()->completed_requests()); 519 EXPECT_EQ(1, network_delegate()->completed_requests());
(...skipping 12 matching lines...) Expand all
530 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"), 532 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"),
531 MockRead(ASYNC, 2, "Content-Length: 9\r\n"), 533 MockRead(ASYNC, 2, "Content-Length: 9\r\n"),
532 MockRead(ASYNC, 3, "Set-Cookie: name=value\r\n\r\n"), 534 MockRead(ASYNC, 3, "Set-Cookie: name=value\r\n\r\n"),
533 MockRead(ASYNC, 4, "test.html"), 535 MockRead(ASYNC, 4, "test.html"),
534 }; 536 };
535 537
536 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 538 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
537 539
538 TestDelegate request_delegate; 540 TestDelegate request_delegate;
539 URLRequest url_request(GURL("ftp://ftp.example.com/"), 541 URLRequest url_request(GURL("ftp://ftp.example.com/"),
542 DEFAULT_PRIORITY,
540 &request_delegate, 543 &request_delegate,
541 request_context(), 544 request_context());
542 network_delegate());
543 url_request.Start(); 545 url_request.Start();
544 ASSERT_TRUE(url_request.is_pending()); 546 ASSERT_TRUE(url_request.is_pending());
545 547
546 socket_data(0)->RunFor(5); 548 socket_data(0)->RunFor(5);
547 549
548 EXPECT_TRUE(url_request.status().is_success()); 550 EXPECT_TRUE(url_request.status().is_success());
549 EXPECT_EQ(1, network_delegate()->completed_requests()); 551 EXPECT_EQ(1, network_delegate()->completed_requests());
550 EXPECT_EQ(0, network_delegate()->error_count()); 552 EXPECT_EQ(0, network_delegate()->error_count());
551 553
552 // Make sure we do not accept cookies. 554 // Make sure we do not accept cookies.
(...skipping 11 matching lines...) Expand all
564 }; 566 };
565 MockRead reads[] = { 567 MockRead reads[] = {
566 MockRead(SYNCHRONOUS, 1, "HTTP/1.1 302 Found\r\n"), 568 MockRead(SYNCHRONOUS, 1, "HTTP/1.1 302 Found\r\n"),
567 MockRead(ASYNC, 2, "Location: http://other.example.com/\r\n\r\n"), 569 MockRead(ASYNC, 2, "Location: http://other.example.com/\r\n\r\n"),
568 }; 570 };
569 571
570 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 572 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
571 573
572 TestDelegate request_delegate; 574 TestDelegate request_delegate;
573 URLRequest url_request(GURL("ftp://ftp.example.com/"), 575 URLRequest url_request(GURL("ftp://ftp.example.com/"),
576 DEFAULT_PRIORITY,
574 &request_delegate, 577 &request_delegate,
575 request_context(), 578 request_context());
576 network_delegate());
577 url_request.Start(); 579 url_request.Start();
578 EXPECT_TRUE(url_request.is_pending()); 580 EXPECT_TRUE(url_request.is_pending());
579 581
580 base::MessageLoop::current()->RunUntilIdle(); 582 base::MessageLoop::current()->RunUntilIdle();
581 583
582 EXPECT_TRUE(url_request.is_pending()); 584 EXPECT_TRUE(url_request.is_pending());
583 EXPECT_EQ(0, request_delegate.response_started_count()); 585 EXPECT_EQ(0, request_delegate.response_started_count());
584 EXPECT_EQ(0, network_delegate()->error_count()); 586 EXPECT_EQ(0, network_delegate()->error_count());
585 ASSERT_TRUE(url_request.status().is_success()); 587 ASSERT_TRUE(url_request.status().is_success());
586 588
(...skipping 21 matching lines...) Expand all
608 MockRead(ASYNC, 3, "test1.html"), 610 MockRead(ASYNC, 3, "test1.html"),
609 MockRead(ASYNC, 5, "HTTP/1.1 200 OK\r\n"), 611 MockRead(ASYNC, 5, "HTTP/1.1 200 OK\r\n"),
610 MockRead(ASYNC, 6, "Content-Length: 10\r\n\r\n"), 612 MockRead(ASYNC, 6, "Content-Length: 10\r\n\r\n"),
611 MockRead(ASYNC, 7, "test2.html"), 613 MockRead(ASYNC, 7, "test2.html"),
612 }; 614 };
613 615
614 AddSocket(reads, arraysize(reads), writes, arraysize(writes)); 616 AddSocket(reads, arraysize(reads), writes, arraysize(writes));
615 617
616 TestDelegate request_delegate1; 618 TestDelegate request_delegate1;
617 URLRequest url_request1(GURL("ftp://ftp.example.com/first"), 619 URLRequest url_request1(GURL("ftp://ftp.example.com/first"),
620 DEFAULT_PRIORITY,
618 &request_delegate1, 621 &request_delegate1,
619 request_context(), 622 request_context());
620 network_delegate());
621 url_request1.Start(); 623 url_request1.Start();
622 ASSERT_TRUE(url_request1.is_pending()); 624 ASSERT_TRUE(url_request1.is_pending());
623 socket_data(0)->RunFor(4); 625 socket_data(0)->RunFor(4);
624 626
625 EXPECT_TRUE(url_request1.status().is_success()); 627 EXPECT_TRUE(url_request1.status().is_success());
626 EXPECT_EQ(1, network_delegate()->completed_requests()); 628 EXPECT_EQ(1, network_delegate()->completed_requests());
627 EXPECT_EQ(0, network_delegate()->error_count()); 629 EXPECT_EQ(0, network_delegate()->error_count());
628 EXPECT_FALSE(request_delegate1.auth_required_called()); 630 EXPECT_FALSE(request_delegate1.auth_required_called());
629 EXPECT_EQ("test1.html", request_delegate1.data_received()); 631 EXPECT_EQ("test1.html", request_delegate1.data_received());
630 632
631 TestDelegate request_delegate2; 633 TestDelegate request_delegate2;
632 URLRequest url_request2(GURL("ftp://ftp.example.com/second"), 634 URLRequest url_request2(GURL("ftp://ftp.example.com/second"),
635 DEFAULT_PRIORITY,
633 &request_delegate2, 636 &request_delegate2,
634 request_context(), 637 request_context());
635 network_delegate());
636 url_request2.Start(); 638 url_request2.Start();
637 ASSERT_TRUE(url_request2.is_pending()); 639 ASSERT_TRUE(url_request2.is_pending());
638 socket_data(0)->RunFor(4); 640 socket_data(0)->RunFor(4);
639 641
640 EXPECT_TRUE(url_request2.status().is_success()); 642 EXPECT_TRUE(url_request2.status().is_success());
641 EXPECT_EQ(2, network_delegate()->completed_requests()); 643 EXPECT_EQ(2, network_delegate()->completed_requests());
642 EXPECT_EQ(0, network_delegate()->error_count()); 644 EXPECT_EQ(0, network_delegate()->error_count());
643 EXPECT_FALSE(request_delegate2.auth_required_called()); 645 EXPECT_FALSE(request_delegate2.auth_required_called());
644 EXPECT_EQ("test2.html", request_delegate2.data_received()); 646 EXPECT_EQ("test2.html", request_delegate2.data_received());
645 } 647 }
(...skipping 23 matching lines...) Expand all
669 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"), 671 MockRead(ASYNC, 1, "HTTP/1.1 200 OK\r\n"),
670 MockRead(ASYNC, 2, "Content-Length: 10\r\n\r\n"), 672 MockRead(ASYNC, 2, "Content-Length: 10\r\n\r\n"),
671 MockRead(ASYNC, 3, "test2.html"), 673 MockRead(ASYNC, 3, "test2.html"),
672 }; 674 };
673 675
674 AddSocket(reads1, arraysize(reads1), writes1, arraysize(writes1)); 676 AddSocket(reads1, arraysize(reads1), writes1, arraysize(writes1));
675 AddSocket(reads2, arraysize(reads2), writes2, arraysize(writes2)); 677 AddSocket(reads2, arraysize(reads2), writes2, arraysize(writes2));
676 678
677 TestDelegate request_delegate1; 679 TestDelegate request_delegate1;
678 URLRequest url_request1(GURL("ftp://ftp.example.com/first"), 680 URLRequest url_request1(GURL("ftp://ftp.example.com/first"),
681 DEFAULT_PRIORITY,
679 &request_delegate1, 682 &request_delegate1,
680 request_context(), 683 request_context());
681 network_delegate());
682 url_request1.Start(); 684 url_request1.Start();
683 ASSERT_TRUE(url_request1.is_pending()); 685 ASSERT_TRUE(url_request1.is_pending());
684 socket_data(0)->RunFor(4); 686 socket_data(0)->RunFor(4);
685 687
686 EXPECT_TRUE(url_request1.status().is_success()); 688 EXPECT_TRUE(url_request1.status().is_success());
687 EXPECT_EQ(1, network_delegate()->completed_requests()); 689 EXPECT_EQ(1, network_delegate()->completed_requests());
688 EXPECT_EQ(0, network_delegate()->error_count()); 690 EXPECT_EQ(0, network_delegate()->error_count());
689 EXPECT_FALSE(request_delegate1.auth_required_called()); 691 EXPECT_FALSE(request_delegate1.auth_required_called());
690 EXPECT_EQ("test1.html", request_delegate1.data_received()); 692 EXPECT_EQ("test1.html", request_delegate1.data_received());
691 693
692 TestDelegate request_delegate2; 694 TestDelegate request_delegate2;
693 URLRequest url_request2(GURL("http://ftp.example.com/second"), 695 URLRequest url_request2(GURL("http://ftp.example.com/second"),
696 DEFAULT_PRIORITY,
694 &request_delegate2, 697 &request_delegate2,
695 request_context(), 698 request_context());
696 network_delegate());
697 url_request2.Start(); 699 url_request2.Start();
698 ASSERT_TRUE(url_request2.is_pending()); 700 ASSERT_TRUE(url_request2.is_pending());
699 socket_data(1)->RunFor(4); 701 socket_data(1)->RunFor(4);
700 702
701 EXPECT_TRUE(url_request2.status().is_success()); 703 EXPECT_TRUE(url_request2.status().is_success());
702 EXPECT_EQ(2, network_delegate()->completed_requests()); 704 EXPECT_EQ(2, network_delegate()->completed_requests());
703 EXPECT_EQ(0, network_delegate()->error_count()); 705 EXPECT_EQ(0, network_delegate()->error_count());
704 EXPECT_FALSE(request_delegate2.auth_required_called()); 706 EXPECT_FALSE(request_delegate2.auth_required_called());
705 EXPECT_EQ("test2.html", request_delegate2.data_received()); 707 EXPECT_EQ("test2.html", request_delegate2.data_received());
706 } 708 }
707 709
708 } // namespace 710 } // namespace
709 711
710 } // namespace net 712 } // namespace net
OLDNEW
« no previous file with comments | « net/url_request/url_request_filter_unittest.cc ('k') | net/url_request/url_request_http_job_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698