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

Side by Side Diff: chrome/test/testing_profile.cc

Issue 7464029: Adding QuotaManager logic to TestingProfile. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "chrome/test/testing_profile.h" 5 #include "chrome/test/testing_profile.h"
6 6
7 #include "build/build_config.h" 7 #include "build/build_config.h"
8 8
9 #include "base/base_paths.h" 9 #include "base/base_paths.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 #include "chrome/browser/ui/find_bar/find_bar_state.h" 44 #include "chrome/browser/ui/find_bar/find_bar_state.h"
45 #include "chrome/browser/ui/webui/chrome_url_data_manager.h" 45 #include "chrome/browser/ui/webui/chrome_url_data_manager.h"
46 #include "chrome/common/chrome_constants.h" 46 #include "chrome/common/chrome_constants.h"
47 #include "chrome/common/chrome_notification_types.h" 47 #include "chrome/common/chrome_notification_types.h"
48 #include "chrome/common/url_constants.h" 48 #include "chrome/common/url_constants.h"
49 #include "chrome/test/bookmark_load_observer.h" 49 #include "chrome/test/bookmark_load_observer.h"
50 #include "chrome/test/test_url_request_context_getter.h" 50 #include "chrome/test/test_url_request_context_getter.h"
51 #include "chrome/test/testing_pref_service.h" 51 #include "chrome/test/testing_pref_service.h"
52 #include "chrome/test/ui_test_utils.h" 52 #include "chrome/test/ui_test_utils.h"
53 #include "content/browser/browser_thread.h" 53 #include "content/browser/browser_thread.h"
54 #include "content/browser/file_system/browser_file_system_helper.h"
54 #include "content/browser/in_process_webkit/webkit_context.h" 55 #include "content/browser/in_process_webkit/webkit_context.h"
55 #include "content/browser/mock_resource_context.h" 56 #include "content/browser/mock_resource_context.h"
56 #include "content/common/notification_service.h" 57 #include "content/common/notification_service.h"
57 #include "net/base/cookie_monster.h" 58 #include "net/base/cookie_monster.h"
58 #include "net/url_request/url_request_context.h" 59 #include "net/url_request/url_request_context.h"
59 #include "net/url_request/url_request_context_getter.h" 60 #include "net/url_request/url_request_context_getter.h"
60 #include "net/url_request/url_request_test_util.h" 61 #include "net/url_request/url_request_test_util.h"
61 #include "testing/gmock/include/gmock/gmock.h" 62 #include "testing/gmock/include/gmock/gmock.h"
62 #include "webkit/database/database_tracker.h" 63 #include "webkit/database/database_tracker.h"
63 #include "webkit/fileapi/file_system_context.h" 64 #include "webkit/fileapi/file_system_context.h"
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 } 386 }
386 387
387 bool TestingProfile::HasOffTheRecordProfile() { 388 bool TestingProfile::HasOffTheRecordProfile() {
388 return incognito_profile_.get() != NULL; 389 return incognito_profile_.get() != NULL;
389 } 390 }
390 391
391 Profile* TestingProfile::GetOriginalProfile() { 392 Profile* TestingProfile::GetOriginalProfile() {
392 return this; 393 return this;
393 } 394 }
394 395
395 void TestingProfile::SetAppCacheService(
396 ChromeAppCacheService* appcache_service) {
397 appcache_service_ = appcache_service;
398 }
399
400 ChromeAppCacheService* TestingProfile::GetAppCacheService() { 396 ChromeAppCacheService* TestingProfile::GetAppCacheService() {
397 CreateQuotaManagerAndClients();
401 return appcache_service_.get(); 398 return appcache_service_.get();
402 } 399 }
403 400
404 webkit_database::DatabaseTracker* TestingProfile::GetDatabaseTracker() { 401 webkit_database::DatabaseTracker* TestingProfile::GetDatabaseTracker() {
405 if (!db_tracker_) { 402 CreateQuotaManagerAndClients();
406 db_tracker_ = new webkit_database::DatabaseTracker(
407 GetPath(), false, false, GetExtensionSpecialStoragePolicy(),
408 NULL, NULL);
409 }
410 return db_tracker_; 403 return db_tracker_;
411 } 404 }
412 405
413 VisitedLinkMaster* TestingProfile::GetVisitedLinkMaster() { 406 VisitedLinkMaster* TestingProfile::GetVisitedLinkMaster() {
414 return NULL; 407 return NULL;
415 } 408 }
416 409
417 ExtensionService* TestingProfile::GetExtensionService() { 410 ExtensionService* TestingProfile::GetExtensionService() {
418 return extension_service_.get(); 411 return extension_service_.get();
419 } 412 }
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
527 520
528 DownloadManager* TestingProfile::GetDownloadManager() { 521 DownloadManager* TestingProfile::GetDownloadManager() {
529 return NULL; 522 return NULL;
530 } 523 }
531 524
532 PersonalDataManager* TestingProfile::GetPersonalDataManager() { 525 PersonalDataManager* TestingProfile::GetPersonalDataManager() {
533 return NULL; 526 return NULL;
534 } 527 }
535 528
536 fileapi::FileSystemContext* TestingProfile::GetFileSystemContext() { 529 fileapi::FileSystemContext* TestingProfile::GetFileSystemContext() {
537 if (!file_system_context_) { 530 CreateQuotaManagerAndClients();
538 file_system_context_ = new fileapi::FileSystemContext(
539 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE),
540 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO),
541 GetExtensionSpecialStoragePolicy(),
542 NULL,
543 GetPath(),
544 IsOffTheRecord(),
545 true, // Allow file access from files.
546 true, // Unlimited quota.
547 NULL);
548 }
549 return file_system_context_.get(); 531 return file_system_context_.get();
550 } 532 }
551 533
552 quota::QuotaManager* TestingProfile::GetQuotaManager() { 534 quota::QuotaManager* TestingProfile::GetQuotaManager() {
553 return NULL; 535 CreateQuotaManagerAndClients();
536 return quota_manager_.get();
537 }
538
539 void TestingProfile::CreateQuotaManagerAndClients() {
540 if (quota_manager_.get()) {
541 DCHECK(appcache_service_.get());
542 DCHECK(db_tracker_.get());
543 DCHECK(file_system_context_.get());
544 DCHECK(webkit_context_.get());
545 return;
546 }
547
548 // All the clients have to be created and registered with the
549 // quota manager prior to the manager being used. So, we do them
550 // all together here prior to handing our a reference to anything
551 // that uses the quota manager.
552 quota_manager_ = new quota::QuotaManager(
553 IsOffTheRecord(),
554 GetPath(),
555 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO),
556 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::DB),
557 GetExtensionSpecialStoragePolicy());
558
559 // Each consumer is responsible for registering its QuotaClient during
560 // its construction.
561 file_system_context_ = CreateFileSystemContext(
562 GetPath(), IsOffTheRecord(),
563 GetExtensionSpecialStoragePolicy(),
564 quota_manager_->proxy());
565 db_tracker_ = new webkit_database::DatabaseTracker(
566 GetPath(), IsOffTheRecord(), false,
567 GetExtensionSpecialStoragePolicy(),
568 quota_manager_->proxy(),
569 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE));
570 webkit_context_ = new WebKitContext(
571 IsOffTheRecord(), GetPath(), GetExtensionSpecialStoragePolicy(),
572 false, quota_manager_->proxy(),
573 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::WEBKIT));
574 appcache_service_ = new ChromeAppCacheService(quota_manager_->proxy());
575 BrowserThread::PostTask(
576 BrowserThread::IO, FROM_HERE,
577 NewRunnableMethod(
578 appcache_service_.get(),
579 &ChromeAppCacheService::InitializeOnIOThread,
580 IsOffTheRecord()
581 ? FilePath() : GetPath().Append(chrome::kAppCacheDirname),
582 &GetResourceContext(),
583 make_scoped_refptr(GetExtensionSpecialStoragePolicy()),
584 false));
585
586 // Block until the posted task is finished, otherwise the appcache service
587 // won't be properly initialized.
588 MessageLoop::current()->RunAllPending();
554 } 589 }
555 590
556 BrowserSignin* TestingProfile::GetBrowserSignin() { 591 BrowserSignin* TestingProfile::GetBrowserSignin() {
557 return NULL; 592 return NULL;
558 } 593 }
559 594
560 bool TestingProfile::HasCreatedDownloadManager() const { 595 bool TestingProfile::HasCreatedDownloadManager() const {
561 return false; 596 return false;
562 } 597 }
563 598
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
685 720
686 ProtocolHandlerRegistry* TestingProfile::GetProtocolHandlerRegistry() { 721 ProtocolHandlerRegistry* TestingProfile::GetProtocolHandlerRegistry() {
687 return protocol_handler_registry_.get(); 722 return protocol_handler_registry_.get();
688 } 723 }
689 724
690 SpellCheckHost* TestingProfile::GetSpellCheckHost() { 725 SpellCheckHost* TestingProfile::GetSpellCheckHost() {
691 return NULL; 726 return NULL;
692 } 727 }
693 728
694 WebKitContext* TestingProfile::GetWebKitContext() { 729 WebKitContext* TestingProfile::GetWebKitContext() {
695 if (webkit_context_ == NULL) { 730 CreateQuotaManagerAndClients();
696 webkit_context_ = new WebKitContext(
697 IsOffTheRecord(), GetPath(),
698 GetExtensionSpecialStoragePolicy(),
699 false, NULL, NULL);
700 }
701 return webkit_context_; 731 return webkit_context_;
702 } 732 }
703 733
704 WebKitContext* TestingProfile::GetOffTheRecordWebKitContext() { 734 WebKitContext* TestingProfile::GetOffTheRecordWebKitContext() {
705 return NULL; 735 return NULL;
706 } 736 }
707 737
708 FilePath TestingProfile::last_selected_directory() { 738 FilePath TestingProfile::last_selected_directory() {
709 return last_selected_directory_; 739 return last_selected_directory_;
710 } 740 }
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
793 quota::SpecialStoragePolicy* TestingProfile::GetSpecialStoragePolicy() { 823 quota::SpecialStoragePolicy* TestingProfile::GetSpecialStoragePolicy() {
794 return GetExtensionSpecialStoragePolicy(); 824 return GetExtensionSpecialStoragePolicy();
795 } 825 }
796 826
797 void TestingProfile::DestroyWebDataService() { 827 void TestingProfile::DestroyWebDataService() {
798 if (!web_data_service_.get()) 828 if (!web_data_service_.get())
799 return; 829 return;
800 830
801 web_data_service_->Shutdown(); 831 web_data_service_->Shutdown();
802 } 832 }
OLDNEW
« chrome/browser/browsing_data_remover_unittest.cc ('K') | « chrome/test/testing_profile.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698