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

Side by Side Diff: content/browser/loader/resource_dispatcher_host_unittest.cc

Issue 667943003: Standardize usage of virtual/override/final in content/browser/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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 <vector> 5 #include <vector>
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/files/file_path.h" 9 #include "base/files/file_path.h"
10 #include "base/files/file_util.h" 10 #include "base/files/file_util.h"
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 canceled_(false), 216 canceled_(false),
217 received_after_canceled_(0) { 217 received_after_canceled_(0) {
218 ChildProcessSecurityPolicyImpl::GetInstance()->Add(child_id()); 218 ChildProcessSecurityPolicyImpl::GetInstance()->Add(child_id());
219 set_peer_pid_for_testing(base::GetCurrentProcId()); 219 set_peer_pid_for_testing(base::GetCurrentProcId());
220 } 220 }
221 221
222 void set_canceled(bool canceled) { canceled_ = canceled; } 222 void set_canceled(bool canceled) { canceled_ = canceled; }
223 int received_after_canceled() const { return received_after_canceled_; } 223 int received_after_canceled() const { return received_after_canceled_; }
224 224
225 // ResourceMessageFilter override 225 // ResourceMessageFilter override
226 virtual bool Send(IPC::Message* msg) override { 226 bool Send(IPC::Message* msg) override {
227 // No messages should be received when the process has been canceled. 227 // No messages should be received when the process has been canceled.
228 if (canceled_) 228 if (canceled_)
229 received_after_canceled_++; 229 received_after_canceled_++;
230 ReleaseHandlesInMessage(*msg); 230 ReleaseHandlesInMessage(*msg);
231 delete msg; 231 delete msg;
232 return true; 232 return true;
233 } 233 }
234 234
235 ResourceContext* resource_context() { return resource_context_; } 235 ResourceContext* resource_context() { return resource_context_; }
236 236
237 protected: 237 protected:
238 virtual ~TestFilter() {} 238 ~TestFilter() override {}
239 239
240 private: 240 private:
241 void GetContexts(const ResourceHostMsg_Request& request, 241 void GetContexts(const ResourceHostMsg_Request& request,
242 ResourceContext** resource_context, 242 ResourceContext** resource_context,
243 net::URLRequestContext** request_context) { 243 net::URLRequestContext** request_context) {
244 *resource_context = resource_context_; 244 *resource_context = resource_context_;
245 *request_context = resource_context_->GetRequestContext(); 245 *request_context = resource_context_->GetRequestContext();
246 } 246 }
247 247
248 ResourceContext* resource_context_; 248 ResourceContext* resource_context_;
249 bool canceled_; 249 bool canceled_;
250 int received_after_canceled_; 250 int received_after_canceled_;
251 251
252 DISALLOW_COPY_AND_ASSIGN(TestFilter); 252 DISALLOW_COPY_AND_ASSIGN(TestFilter);
253 }; 253 };
254 254
255 255
256 // This class forwards the incoming messages to the ResourceDispatcherHostTest. 256 // This class forwards the incoming messages to the ResourceDispatcherHostTest.
257 // For the test, we want all the incoming messages to go to the same place, 257 // For the test, we want all the incoming messages to go to the same place,
258 // which is why this forwards. 258 // which is why this forwards.
259 class ForwardingFilter : public TestFilter { 259 class ForwardingFilter : public TestFilter {
260 public: 260 public:
261 explicit ForwardingFilter(IPC::Sender* dest, 261 explicit ForwardingFilter(IPC::Sender* dest,
262 ResourceContext* resource_context) 262 ResourceContext* resource_context)
263 : TestFilter(resource_context), 263 : TestFilter(resource_context),
264 dest_(dest) { 264 dest_(dest) {
265 } 265 }
266 266
267 // TestFilter override 267 // TestFilter override
268 virtual bool Send(IPC::Message* msg) override { 268 bool Send(IPC::Message* msg) override { return dest_->Send(msg); }
269 return dest_->Send(msg);
270 }
271 269
272 private: 270 private:
273 virtual ~ForwardingFilter() {} 271 ~ForwardingFilter() override {}
274 272
275 IPC::Sender* dest_; 273 IPC::Sender* dest_;
276 274
277 DISALLOW_COPY_AND_ASSIGN(ForwardingFilter); 275 DISALLOW_COPY_AND_ASSIGN(ForwardingFilter);
278 }; 276 };
279 277
280 // This class is a variation on URLRequestTestJob that will call 278 // This class is a variation on URLRequestTestJob that will call
281 // URLRequest::WillStartUsingNetwork before starting. 279 // URLRequest::WillStartUsingNetwork before starting.
282 class URLRequestTestDelayedNetworkJob : public net::URLRequestTestJob { 280 class URLRequestTestDelayedNetworkJob : public net::URLRequestTestJob {
283 public: 281 public:
284 URLRequestTestDelayedNetworkJob(net::URLRequest* request, 282 URLRequestTestDelayedNetworkJob(net::URLRequest* request,
285 net::NetworkDelegate* network_delegate) 283 net::NetworkDelegate* network_delegate)
286 : net::URLRequestTestJob(request, network_delegate) {} 284 : net::URLRequestTestJob(request, network_delegate) {}
287 285
288 // Only start if not deferred for network start. 286 // Only start if not deferred for network start.
289 virtual void Start() override { 287 void Start() override {
290 bool defer = false; 288 bool defer = false;
291 NotifyBeforeNetworkStart(&defer); 289 NotifyBeforeNetworkStart(&defer);
292 if (defer) 290 if (defer)
293 return; 291 return;
294 net::URLRequestTestJob::Start(); 292 net::URLRequestTestJob::Start();
295 } 293 }
296 294
297 virtual void ResumeNetworkStart() override { 295 void ResumeNetworkStart() override { net::URLRequestTestJob::StartAsync(); }
298 net::URLRequestTestJob::StartAsync();
299 }
300 296
301 private: 297 private:
302 virtual ~URLRequestTestDelayedNetworkJob() {} 298 ~URLRequestTestDelayedNetworkJob() override {}
303 299
304 DISALLOW_COPY_AND_ASSIGN(URLRequestTestDelayedNetworkJob); 300 DISALLOW_COPY_AND_ASSIGN(URLRequestTestDelayedNetworkJob);
305 }; 301 };
306 302
307 // This class is a variation on URLRequestTestJob in that it does 303 // This class is a variation on URLRequestTestJob in that it does
308 // not complete start upon entry, only when specifically told to. 304 // not complete start upon entry, only when specifically told to.
309 class URLRequestTestDelayedStartJob : public net::URLRequestTestJob { 305 class URLRequestTestDelayedStartJob : public net::URLRequestTestJob {
310 public: 306 public:
311 URLRequestTestDelayedStartJob(net::URLRequest* request, 307 URLRequestTestDelayedStartJob(net::URLRequest* request,
312 net::NetworkDelegate* network_delegate) 308 net::NetworkDelegate* network_delegate)
(...skipping 13 matching lines...) Expand all
326 bool auto_advance) 322 bool auto_advance)
327 : net::URLRequestTestJob(request, 323 : net::URLRequestTestJob(request,
328 network_delegate, 324 network_delegate,
329 response_headers, 325 response_headers,
330 response_data, 326 response_data,
331 auto_advance) { 327 auto_advance) {
332 Init(); 328 Init();
333 } 329 }
334 330
335 // Do nothing until you're told to. 331 // Do nothing until you're told to.
336 virtual void Start() override {} 332 void Start() override {}
337 333
338 // Finish starting a URL request whose job is an instance of 334 // Finish starting a URL request whose job is an instance of
339 // URLRequestTestDelayedStartJob. It is illegal to call this routine 335 // URLRequestTestDelayedStartJob. It is illegal to call this routine
340 // with a URLRequest that does not use URLRequestTestDelayedStartJob. 336 // with a URLRequest that does not use URLRequestTestDelayedStartJob.
341 static void CompleteStart(net::URLRequest* request) { 337 static void CompleteStart(net::URLRequest* request) {
342 for (URLRequestTestDelayedStartJob* job = list_head_; 338 for (URLRequestTestDelayedStartJob* job = list_head_;
343 job; 339 job;
344 job = job->next_) { 340 job = job->next_) {
345 if (job->request() == request) { 341 if (job->request() == request) {
346 job->net::URLRequestTestJob::Start(); 342 job->net::URLRequestTestJob::Start();
(...skipping 10 matching lines...) Expand all
357 static void ClearQueue() { 353 static void ClearQueue() {
358 if (list_head_) { 354 if (list_head_) {
359 LOG(ERROR) 355 LOG(ERROR)
360 << "Unreleased entries on URLRequestTestDelayedStartJob delay queue" 356 << "Unreleased entries on URLRequestTestDelayedStartJob delay queue"
361 << "; may result in leaks."; 357 << "; may result in leaks.";
362 list_head_ = NULL; 358 list_head_ = NULL;
363 } 359 }
364 } 360 }
365 361
366 protected: 362 protected:
367 virtual ~URLRequestTestDelayedStartJob() { 363 ~URLRequestTestDelayedStartJob() override {
368 for (URLRequestTestDelayedStartJob** job = &list_head_; *job; 364 for (URLRequestTestDelayedStartJob** job = &list_head_; *job;
369 job = &(*job)->next_) { 365 job = &(*job)->next_) {
370 if (*job == this) { 366 if (*job == this) {
371 *job = (*job)->next_; 367 *job = (*job)->next_;
372 return; 368 return;
373 } 369 }
374 } 370 }
375 NOTREACHED(); 371 NOTREACHED();
376 } 372 }
377 373
(...skipping 26 matching lines...) Expand all
404 const std::string& response_headers, 400 const std::string& response_headers,
405 const std::string& response_data, 401 const std::string& response_data,
406 bool auto_advance) 402 bool auto_advance)
407 : net::URLRequestTestJob(request, 403 : net::URLRequestTestJob(request,
408 network_delegate, 404 network_delegate,
409 response_headers, 405 response_headers,
410 response_data, 406 response_data,
411 auto_advance) {} 407 auto_advance) {}
412 408
413 protected: 409 protected:
414 virtual ~URLRequestTestDelayedCompletionJob() {} 410 ~URLRequestTestDelayedCompletionJob() override {}
415 411
416 private: 412 private:
417 virtual bool NextReadAsync() override { return true; } 413 bool NextReadAsync() override { return true; }
418 }; 414 };
419 415
420 class URLRequestBigJob : public net::URLRequestSimpleJob { 416 class URLRequestBigJob : public net::URLRequestSimpleJob {
421 public: 417 public:
422 URLRequestBigJob(net::URLRequest* request, 418 URLRequestBigJob(net::URLRequest* request,
423 net::NetworkDelegate* network_delegate) 419 net::NetworkDelegate* network_delegate)
424 : net::URLRequestSimpleJob(request, network_delegate) { 420 : net::URLRequestSimpleJob(request, network_delegate) {
425 } 421 }
426 422
427 virtual int GetData(std::string* mime_type, 423 int GetData(std::string* mime_type,
428 std::string* charset, 424 std::string* charset,
429 std::string* data, 425 std::string* data,
430 const net::CompletionCallback& callback) const override { 426 const net::CompletionCallback& callback) const override {
431 *mime_type = "text/plain"; 427 *mime_type = "text/plain";
432 *charset = "UTF-8"; 428 *charset = "UTF-8";
433 429
434 std::string text; 430 std::string text;
435 int count; 431 int count;
436 if (!ParseURL(request_->url(), &text, &count)) 432 if (!ParseURL(request_->url(), &text, &count))
437 return net::ERR_INVALID_URL; 433 return net::ERR_INVALID_URL;
438 434
439 data->reserve(text.size() * count); 435 data->reserve(text.size() * count);
440 for (int i = 0; i < count; ++i) 436 for (int i = 0; i < count; ++i)
441 data->append(text); 437 data->append(text);
442 438
443 return net::OK; 439 return net::OK;
444 } 440 }
445 441
446 private: 442 private:
447 virtual ~URLRequestBigJob() {} 443 ~URLRequestBigJob() override {}
448 444
449 // big-job:substring,N 445 // big-job:substring,N
450 static bool ParseURL(const GURL& url, std::string* text, int* count) { 446 static bool ParseURL(const GURL& url, std::string* text, int* count) {
451 std::vector<std::string> parts; 447 std::vector<std::string> parts;
452 base::SplitString(url.path(), ',', &parts); 448 base::SplitString(url.path(), ',', &parts);
453 449
454 if (parts.size() != 2) 450 if (parts.size() != 2)
455 return false; 451 return false;
456 452
457 *text = parts[0]; 453 *text = parts[0];
(...skipping 26 matching lines...) Expand all
484 } 480 }
485 481
486 void SetDelayedCompleteJobGeneration(bool delay_job_complete) { 482 void SetDelayedCompleteJobGeneration(bool delay_job_complete) {
487 delay_complete_ = delay_job_complete; 483 delay_complete_ = delay_job_complete;
488 } 484 }
489 485
490 void SetNetworkStartNotificationJobGeneration(bool notification) { 486 void SetNetworkStartNotificationJobGeneration(bool notification) {
491 network_start_notification_ = notification; 487 network_start_notification_ = notification;
492 } 488 }
493 489
494 virtual net::URLRequestJob* MaybeCreateJobWithProtocolHandler( 490 net::URLRequestJob* MaybeCreateJobWithProtocolHandler(
495 const std::string& scheme, 491 const std::string& scheme,
496 net::URLRequest* request, 492 net::URLRequest* request,
497 net::NetworkDelegate* network_delegate) const override; 493 net::NetworkDelegate* network_delegate) const override;
498 494
499 virtual bool IsHandledProtocol(const std::string& scheme) const override { 495 bool IsHandledProtocol(const std::string& scheme) const override {
500 return supported_schemes_.count(scheme) > 0; 496 return supported_schemes_.count(scheme) > 0;
501 } 497 }
502 498
503 virtual bool IsHandledURL(const GURL& url) const override { 499 bool IsHandledURL(const GURL& url) const override {
504 return supported_schemes_.count(url.scheme()) > 0; 500 return supported_schemes_.count(url.scheme()) > 0;
505 } 501 }
506 502
507 virtual bool IsSafeRedirectTarget(const GURL& location) const override { 503 bool IsSafeRedirectTarget(const GURL& location) const override {
508 return false; 504 return false;
509 } 505 }
510 506
511 private: 507 private:
512 ResourceDispatcherHostTest* test_fixture_; 508 ResourceDispatcherHostTest* test_fixture_;
513 bool delay_start_; 509 bool delay_start_;
514 bool delay_complete_; 510 bool delay_complete_;
515 bool network_start_notification_; 511 bool network_start_notification_;
516 mutable int url_request_jobs_created_count_; 512 mutable int url_request_jobs_created_count_;
517 std::set<std::string> supported_schemes_; 513 std::set<std::string> supported_schemes_;
518 514
519 DISALLOW_COPY_AND_ASSIGN(TestURLRequestJobFactory); 515 DISALLOW_COPY_AND_ASSIGN(TestURLRequestJobFactory);
520 }; 516 };
521 517
522 // Associated with an URLRequest to determine if the URLRequest gets deleted. 518 // Associated with an URLRequest to determine if the URLRequest gets deleted.
523 class TestUserData : public base::SupportsUserData::Data { 519 class TestUserData : public base::SupportsUserData::Data {
524 public: 520 public:
525 explicit TestUserData(bool* was_deleted) 521 explicit TestUserData(bool* was_deleted)
526 : was_deleted_(was_deleted) { 522 : was_deleted_(was_deleted) {
527 } 523 }
528 524
529 virtual ~TestUserData() { 525 ~TestUserData() override { *was_deleted_ = true; }
530 *was_deleted_ = true;
531 }
532 526
533 private: 527 private:
534 bool* was_deleted_; 528 bool* was_deleted_;
535 }; 529 };
536 530
537 class TransfersAllNavigationsContentBrowserClient 531 class TransfersAllNavigationsContentBrowserClient
538 : public TestContentBrowserClient { 532 : public TestContentBrowserClient {
539 public: 533 public:
540 virtual bool ShouldSwapProcessesForRedirect(ResourceContext* resource_context, 534 bool ShouldSwapProcessesForRedirect(ResourceContext* resource_context,
541 const GURL& current_url, 535 const GURL& current_url,
542 const GURL& new_url) override { 536 const GURL& new_url) override {
543 return true; 537 return true;
544 } 538 }
545 }; 539 };
546 540
547 enum GenericResourceThrottleFlags { 541 enum GenericResourceThrottleFlags {
548 NONE = 0, 542 NONE = 0,
549 DEFER_STARTING_REQUEST = 1 << 0, 543 DEFER_STARTING_REQUEST = 1 << 0,
550 DEFER_PROCESSING_RESPONSE = 1 << 1, 544 DEFER_PROCESSING_RESPONSE = 1 << 1,
551 CANCEL_BEFORE_START = 1 << 2, 545 CANCEL_BEFORE_START = 1 << 2,
552 DEFER_NETWORK_START = 1 << 3 546 DEFER_NETWORK_START = 1 << 3
553 }; 547 };
554 548
555 // Throttle that tracks the current throttle blocking a request. Only one 549 // Throttle that tracks the current throttle blocking a request. Only one
556 // can throttle any request at a time. 550 // can throttle any request at a time.
557 class GenericResourceThrottle : public ResourceThrottle { 551 class GenericResourceThrottle : public ResourceThrottle {
558 public: 552 public:
559 // The value is used to indicate that the throttle should not provide 553 // The value is used to indicate that the throttle should not provide
560 // a error code when cancelling a request. net::OK is used, because this 554 // a error code when cancelling a request. net::OK is used, because this
561 // is not an error code. 555 // is not an error code.
562 static const int USE_DEFAULT_CANCEL_ERROR_CODE = net::OK; 556 static const int USE_DEFAULT_CANCEL_ERROR_CODE = net::OK;
563 557
564 GenericResourceThrottle(int flags, int code) 558 GenericResourceThrottle(int flags, int code)
565 : flags_(flags), 559 : flags_(flags),
566 error_code_for_cancellation_(code) { 560 error_code_for_cancellation_(code) {
567 } 561 }
568 562
569 virtual ~GenericResourceThrottle() { 563 ~GenericResourceThrottle() override {
570 if (active_throttle_ == this) 564 if (active_throttle_ == this)
571 active_throttle_ = NULL; 565 active_throttle_ = NULL;
572 } 566 }
573 567
574 // ResourceThrottle implementation: 568 // ResourceThrottle implementation:
575 virtual void WillStartRequest(bool* defer) override { 569 void WillStartRequest(bool* defer) override {
576 ASSERT_EQ(NULL, active_throttle_); 570 ASSERT_EQ(NULL, active_throttle_);
577 if (flags_ & DEFER_STARTING_REQUEST) { 571 if (flags_ & DEFER_STARTING_REQUEST) {
578 active_throttle_ = this; 572 active_throttle_ = this;
579 *defer = true; 573 *defer = true;
580 } 574 }
581 575
582 if (flags_ & CANCEL_BEFORE_START) { 576 if (flags_ & CANCEL_BEFORE_START) {
583 if (error_code_for_cancellation_ == USE_DEFAULT_CANCEL_ERROR_CODE) { 577 if (error_code_for_cancellation_ == USE_DEFAULT_CANCEL_ERROR_CODE) {
584 controller()->Cancel(); 578 controller()->Cancel();
585 } else { 579 } else {
586 controller()->CancelWithError(error_code_for_cancellation_); 580 controller()->CancelWithError(error_code_for_cancellation_);
587 } 581 }
588 } 582 }
589 } 583 }
590 584
591 virtual void WillProcessResponse(bool* defer) override { 585 void WillProcessResponse(bool* defer) override {
592 ASSERT_EQ(NULL, active_throttle_); 586 ASSERT_EQ(NULL, active_throttle_);
593 if (flags_ & DEFER_PROCESSING_RESPONSE) { 587 if (flags_ & DEFER_PROCESSING_RESPONSE) {
594 active_throttle_ = this; 588 active_throttle_ = this;
595 *defer = true; 589 *defer = true;
596 } 590 }
597 } 591 }
598 592
599 virtual void WillStartUsingNetwork(bool* defer) override { 593 void WillStartUsingNetwork(bool* defer) override {
600 ASSERT_EQ(NULL, active_throttle_); 594 ASSERT_EQ(NULL, active_throttle_);
601 595
602 if (flags_ & DEFER_NETWORK_START) { 596 if (flags_ & DEFER_NETWORK_START) {
603 active_throttle_ = this; 597 active_throttle_ = this;
604 *defer = true; 598 *defer = true;
605 } 599 }
606 } 600 }
607 601
608 virtual const char* GetNameForLogging() const override { 602 const char* GetNameForLogging() const override {
609 return "GenericResourceThrottle"; 603 return "GenericResourceThrottle";
610 } 604 }
611 605
612 void Resume() { 606 void Resume() {
613 ASSERT_TRUE(this == active_throttle_); 607 ASSERT_TRUE(this == active_throttle_);
614 active_throttle_ = NULL; 608 active_throttle_ = NULL;
615 controller()->Resume(); 609 controller()->Resume();
616 } 610 }
617 611
618 static GenericResourceThrottle* active_throttle() { 612 static GenericResourceThrottle* active_throttle() {
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
650 void set_error_code_for_cancellation(int code) { 644 void set_error_code_for_cancellation(int code) {
651 error_code_for_cancellation_ = code; 645 error_code_for_cancellation_ = code;
652 } 646 }
653 647
654 void set_create_two_throttles(bool create_two_throttles) { 648 void set_create_two_throttles(bool create_two_throttles) {
655 create_two_throttles_ = create_two_throttles; 649 create_two_throttles_ = create_two_throttles;
656 } 650 }
657 651
658 // ResourceDispatcherHostDelegate implementation: 652 // ResourceDispatcherHostDelegate implementation:
659 653
660 virtual void RequestBeginning( 654 void RequestBeginning(net::URLRequest* request,
661 net::URLRequest* request, 655 ResourceContext* resource_context,
662 ResourceContext* resource_context, 656 AppCacheService* appcache_service,
663 AppCacheService* appcache_service, 657 ResourceType resource_type,
664 ResourceType resource_type, 658 ScopedVector<ResourceThrottle>* throttles) override {
665 ScopedVector<ResourceThrottle>* throttles) override {
666 if (user_data_) { 659 if (user_data_) {
667 const void* key = user_data_.get(); 660 const void* key = user_data_.get();
668 request->SetUserData(key, user_data_.release()); 661 request->SetUserData(key, user_data_.release());
669 } 662 }
670 663
671 if (flags_ != NONE) { 664 if (flags_ != NONE) {
672 throttles->push_back(new GenericResourceThrottle( 665 throttles->push_back(new GenericResourceThrottle(
673 flags_, error_code_for_cancellation_)); 666 flags_, error_code_for_cancellation_));
674 if (create_two_throttles_) 667 if (create_two_throttles_)
675 throttles->push_back(new GenericResourceThrottle( 668 throttles->push_back(new GenericResourceThrottle(
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
722 filter_ = MakeForwardingFilter(); 715 filter_ = MakeForwardingFilter();
723 // TODO(cbentzel): Better way to get URLRequestContext? 716 // TODO(cbentzel): Better way to get URLRequestContext?
724 net::URLRequestContext* request_context = 717 net::URLRequestContext* request_context =
725 browser_context_->GetResourceContext()->GetRequestContext(); 718 browser_context_->GetResourceContext()->GetRequestContext();
726 job_factory_.reset(new TestURLRequestJobFactory(this)); 719 job_factory_.reset(new TestURLRequestJobFactory(this));
727 request_context->set_job_factory(job_factory_.get()); 720 request_context->set_job_factory(job_factory_.get());
728 request_context->set_network_delegate(&network_delegate_); 721 request_context->set_network_delegate(&network_delegate_);
729 } 722 }
730 723
731 // IPC::Sender implementation 724 // IPC::Sender implementation
732 virtual bool Send(IPC::Message* msg) override { 725 bool Send(IPC::Message* msg) override {
733 accum_.AddMessage(*msg); 726 accum_.AddMessage(*msg);
734 727
735 if (send_data_received_acks_ && 728 if (send_data_received_acks_ &&
736 msg->type() == ResourceMsg_DataReceived::ID) { 729 msg->type() == ResourceMsg_DataReceived::ID) {
737 GenerateDataReceivedACK(*msg); 730 GenerateDataReceivedACK(*msg);
738 } 731 }
739 732
740 if (wait_for_request_complete_loop_ && 733 if (wait_for_request_complete_loop_ &&
741 msg->type() == ResourceMsg_RequestComplete::ID) { 734 msg->type() == ResourceMsg_RequestComplete::ID) {
742 wait_for_request_complete_loop_->Quit(); 735 wait_for_request_complete_loop_->Quit();
(...skipping 2258 matching lines...) Expand 10 before | Expand all | Expand 10 after
3001 } else { 2994 } else {
3002 return new net::URLRequestTestJob( 2995 return new net::URLRequestTestJob(
3003 request, network_delegate, 2996 request, network_delegate,
3004 test_fixture_->response_headers_, test_fixture_->response_data_, 2997 test_fixture_->response_headers_, test_fixture_->response_data_,
3005 false); 2998 false);
3006 } 2999 }
3007 } 3000 }
3008 } 3001 }
3009 3002
3010 } // namespace content 3003 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/loader/resource_dispatcher_host_impl.h ('k') | content/browser/loader/resource_loader.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698