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

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

Issue 3304015: Use PrefChangeRegistrar everywhere (Closed)
Patch Set: final version for commit Created 10 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
« no previous file with comments | « chrome/browser/views/options/general_page_view.cc ('k') | chrome/test/testing_profile.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef CHROME_TEST_TESTING_PROFILE_H_ 5 #ifndef CHROME_TEST_TESTING_PROFILE_H_
6 #define CHROME_TEST_TESTING_PROFILE_H_ 6 #define CHROME_TEST_TESTING_PROFILE_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/ref_counted.h" 9 #include "base/ref_counted.h"
10 #include "base/scoped_ptr.h" 10 #include "base/scoped_ptr.h"
11 #include "base/scoped_temp_dir.h" 11 #include "base/scoped_temp_dir.h"
12 #include "base/timer.h" 12 #include "base/timer.h"
13 #include "chrome/browser/profile.h" 13 #include "chrome/browser/profile.h"
14 14
15 namespace history { 15 namespace history {
16 class TopSites; 16 class TopSites;
17 } 17 }
18 18
19 namespace net { 19 namespace net {
20 class CookieMonster; 20 class CookieMonster;
21 } 21 }
22 22
23 class AutocompleteClassifier; 23 class AutocompleteClassifier;
24 class BookmarkModel; 24 class BookmarkModel;
25 class BrowserThemeProvider; 25 class BrowserThemeProvider;
26 class CommandLine;
26 class DesktopNotificationService; 27 class DesktopNotificationService;
27 class FaviconService; 28 class FaviconService;
28 class FindBarState; 29 class FindBarState;
29 class GeolocationContentSettingsMap; 30 class GeolocationContentSettingsMap;
30 class GeolocationPermissionContext; 31 class GeolocationPermissionContext;
31 class HistoryService; 32 class HistoryService;
32 class HostContentSettingsMap; 33 class HostContentSettingsMap;
33 class PrefService; 34 class PrefService;
34 class ProfileSyncService; 35 class ProfileSyncService;
35 class SessionService; 36 class SessionService;
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 // CreateBookmarkModel. 80 // CreateBookmarkModel.
80 void BlockUntilBookmarkModelLoaded(); 81 void BlockUntilBookmarkModelLoaded();
81 82
82 // Creates a TemplateURLModel. If not invoked the TemplateURLModel is NULL. 83 // Creates a TemplateURLModel. If not invoked the TemplateURLModel is NULL.
83 void CreateTemplateURLModel(); 84 void CreateTemplateURLModel();
84 85
85 // Uses a specific theme provider for this profile. TestingProfile takes 86 // Uses a specific theme provider for this profile. TestingProfile takes
86 // ownership of |theme_provider|. 87 // ownership of |theme_provider|.
87 void UseThemeProvider(BrowserThemeProvider* theme_provider); 88 void UseThemeProvider(BrowserThemeProvider* theme_provider);
88 89
90 // Creates an ExtensionsService initialized with the testing profile and
91 // returns it. The profile keeps its own copy of a scoped_refptr to the
92 // ExtensionsService to make sure that is still alive to be notified when the
93 // profile is destroyed.
94 scoped_refptr<ExtensionsService> CreateExtensionsService(
95 const CommandLine* command_line,
96 const FilePath& install_directory);
97
89 TestingPrefService* GetTestingPrefService(); 98 TestingPrefService* GetTestingPrefService();
90 99
91 virtual ProfileId GetRuntimeId() { 100 virtual ProfileId GetRuntimeId() {
92 return reinterpret_cast<ProfileId>(this); 101 return reinterpret_cast<ProfileId>(this);
93 } 102 }
94 103
95 virtual FilePath GetPath(); 104 virtual FilePath GetPath();
96 105
97 // Sets whether we're off the record. Default is false. 106 // Sets whether we're off the record. Default is false.
98 void set_off_the_record(bool off_the_record) { 107 void set_off_the_record(bool off_the_record) {
99 off_the_record_ = off_the_record; 108 off_the_record_ = off_the_record;
100 } 109 }
101 virtual bool IsOffTheRecord() { return off_the_record_; } 110 virtual bool IsOffTheRecord() { return off_the_record_; }
102 virtual Profile* GetOffTheRecordProfile() { return NULL; } 111 virtual Profile* GetOffTheRecordProfile() { return NULL; }
103 112
104 virtual void DestroyOffTheRecordProfile() {} 113 virtual void DestroyOffTheRecordProfile() {}
105 114
106 virtual bool HasOffTheRecordProfile() { return false; } 115 virtual bool HasOffTheRecordProfile() { return false; }
107 116
108 virtual Profile* GetOriginalProfile() { return this; } 117 virtual Profile* GetOriginalProfile() { return this; }
109 virtual ChromeAppCacheService* GetAppCacheService() { return NULL; } 118 virtual ChromeAppCacheService* GetAppCacheService() { return NULL; }
110 virtual webkit_database::DatabaseTracker* GetDatabaseTracker(); 119 virtual webkit_database::DatabaseTracker* GetDatabaseTracker();
111 virtual VisitedLinkMaster* GetVisitedLinkMaster() { return NULL; } 120 virtual VisitedLinkMaster* GetVisitedLinkMaster() { return NULL; }
112 virtual ExtensionsService* GetExtensionsService() { return NULL; } 121 virtual ExtensionsService* GetExtensionsService();
113 virtual UserScriptMaster* GetUserScriptMaster() { return NULL; } 122 virtual UserScriptMaster* GetUserScriptMaster() { return NULL; }
114 virtual ExtensionDevToolsManager* GetExtensionDevToolsManager() { 123 virtual ExtensionDevToolsManager* GetExtensionDevToolsManager() {
115 return NULL; 124 return NULL;
116 } 125 }
117 virtual ExtensionProcessManager* GetExtensionProcessManager() { return NULL; } 126 virtual ExtensionProcessManager* GetExtensionProcessManager() { return NULL; }
118 virtual ExtensionMessageService* GetExtensionMessageService() { return NULL; } 127 virtual ExtensionMessageService* GetExtensionMessageService() { return NULL; }
119 virtual SSLHostState* GetSSLHostState() { return NULL; } 128 virtual SSLHostState* GetSSLHostState() { return NULL; }
120 virtual net::TransportSecurityState* GetTransportSecurityState() { 129 virtual net::TransportSecurityState* GetTransportSecurityState() {
121 return NULL; 130 return NULL;
122 } 131 }
(...skipping 18 matching lines...) Expand all
141 } 150 }
142 virtual WebDataService* GetWebDataService(ServiceAccessType access) { 151 virtual WebDataService* GetWebDataService(ServiceAccessType access) {
143 return web_data_service_.get(); 152 return web_data_service_.get();
144 } 153 }
145 virtual WebDataService* GetWebDataServiceWithoutCreating() { 154 virtual WebDataService* GetWebDataServiceWithoutCreating() {
146 return web_data_service_.get(); 155 return web_data_service_.get();
147 } 156 }
148 virtual PasswordStore* GetPasswordStore(ServiceAccessType access) { 157 virtual PasswordStore* GetPasswordStore(ServiceAccessType access) {
149 return NULL; 158 return NULL;
150 } 159 }
160 // Initialized the profile's PrefService with an explicity specified
161 // PrefService. Must be called before the TestingProfile.
162 // The profile takes ownership of |pref|.
163 void SetPrefService(PrefService* prefs);
151 virtual PrefService* GetPrefs(); 164 virtual PrefService* GetPrefs();
152 virtual TemplateURLModel* GetTemplateURLModel() { 165 virtual TemplateURLModel* GetTemplateURLModel() {
153 return template_url_model_.get(); 166 return template_url_model_.get();
154 } 167 }
155 virtual TemplateURLFetcher* GetTemplateURLFetcher() { return NULL; } 168 virtual TemplateURLFetcher* GetTemplateURLFetcher() { return NULL; }
156 virtual history::TopSites* GetTopSites(); 169 virtual history::TopSites* GetTopSites();
157 virtual DownloadManager* GetDownloadManager() { return NULL; } 170 virtual DownloadManager* GetDownloadManager() { return NULL; }
158 virtual PersonalDataManager* GetPersonalDataManager() { return NULL; } 171 virtual PersonalDataManager* GetPersonalDataManager() { return NULL; }
159 virtual FileSystemHostContext* GetFileSystemHostContext() { return NULL; } 172 virtual FileSystemHostContext* GetFileSystemHostContext() { return NULL; }
160 virtual bool HasCreatedDownloadManager() const { return false; } 173 virtual bool HasCreatedDownloadManager() const { return false; }
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
256 virtual ProfileSyncService* GetProfileSyncService( 269 virtual ProfileSyncService* GetProfileSyncService(
257 const std::string& cros_notes); 270 const std::string& cros_notes);
258 virtual CloudPrintProxyService* GetCloudPrintProxyService() { return NULL; } 271 virtual CloudPrintProxyService* GetCloudPrintProxyService() { return NULL; }
259 272
260 virtual ChromeBlobStorageContext* GetBlobStorageContext() { 273 virtual ChromeBlobStorageContext* GetBlobStorageContext() {
261 return NULL; 274 return NULL;
262 } 275 }
263 276
264 protected: 277 protected:
265 base::Time start_time_; 278 base::Time start_time_;
266 scoped_ptr<TestingPrefService> prefs_; 279 scoped_ptr<PrefService> prefs_;
280 // ref only for right type, lifecycle is managed by prefs_
281 TestingPrefService* testing_prefs_;
267 282
268 private: 283 private:
269 // Destroys favicon service if it has been created. 284 // Destroys favicon service if it has been created.
270 void DestroyFaviconService(); 285 void DestroyFaviconService();
271 286
272 // If the history service has been created, it is destroyed. This is invoked 287 // If the history service has been created, it is destroyed. This is invoked
273 // from the destructor. 288 // from the destructor.
274 void DestroyHistoryService(); 289 void DestroyHistoryService();
275 290
276 // If the webdata service has been created, it is destroyed. This is invoked 291 // If the webdata service has been created, it is destroyed. This is invoked
277 // from the destructor. 292 // from the destructor.
278 void DestroyWebDataService(); 293 void DestroyWebDataService();
279 294
295 // Creates a TestingPrefService and associates it with the TestingProfile
296 void CreateTestingPrefService();
297
280 // The favicon service. Only created if CreateFaviconService is invoked. 298 // The favicon service. Only created if CreateFaviconService is invoked.
281 scoped_refptr<FaviconService> favicon_service_; 299 scoped_refptr<FaviconService> favicon_service_;
282 300
283 // The history service. Only created if CreateHistoryService is invoked. 301 // The history service. Only created if CreateHistoryService is invoked.
284 scoped_refptr<HistoryService> history_service_; 302 scoped_refptr<HistoryService> history_service_;
285 303
286 // The BookmarkModel. Only created if CreateBookmarkModel is invoked. 304 // The BookmarkModel. Only created if CreateBookmarkModel is invoked.
287 scoped_ptr<BookmarkModel> bookmark_bar_model_; 305 scoped_ptr<BookmarkModel> bookmark_bar_model_;
288 306
289 // The TokenService. Created by CreateTokenService. Filled with dummy data. 307 // The TokenService. Created by CreateTokenService. Filled with dummy data.
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 geolocation_content_settings_map_; 357 geolocation_content_settings_map_;
340 scoped_refptr<GeolocationPermissionContext> geolocation_permission_context_; 358 scoped_refptr<GeolocationPermissionContext> geolocation_permission_context_;
341 scoped_ptr<DesktopNotificationService> desktop_notification_service_; 359 scoped_ptr<DesktopNotificationService> desktop_notification_service_;
342 360
343 // Find bar state. Created lazily by GetFindBarState(). 361 // Find bar state. Created lazily by GetFindBarState().
344 scoped_ptr<FindBarState> find_bar_state_; 362 scoped_ptr<FindBarState> find_bar_state_;
345 363
346 FilePath last_selected_directory_; 364 FilePath last_selected_directory_;
347 scoped_refptr<history::TopSites> top_sites_; // For history and thumbnails. 365 scoped_refptr<history::TopSites> top_sites_; // For history and thumbnails.
348 366
367 // For properly notifying the ExtensionsService when the profile
368 // is disposed.
369 scoped_refptr<ExtensionsService> extensions_service_;
370
349 // We use a temporary directory to store testing profile data. 371 // We use a temporary directory to store testing profile data.
350 ScopedTempDir temp_dir_; 372 ScopedTempDir temp_dir_;
351 }; 373 };
352 374
353 // A profile that derives from another profile. This does not actually 375 // A profile that derives from another profile. This does not actually
354 // override anything except the GetRuntimeId() in order to test sharing of 376 // override anything except the GetRuntimeId() in order to test sharing of
355 // site information. 377 // site information.
356 class DerivedTestingProfile : public TestingProfile { 378 class DerivedTestingProfile : public TestingProfile {
357 public: 379 public:
358 explicit DerivedTestingProfile(Profile* profile) 380 explicit DerivedTestingProfile(Profile* profile)
359 : original_profile_(profile) {} 381 : original_profile_(profile) {}
360 382
361 virtual ProfileId GetRuntimeId() { 383 virtual ProfileId GetRuntimeId() {
362 return original_profile_->GetRuntimeId(); 384 return original_profile_->GetRuntimeId();
363 } 385 }
364 386
365 protected: 387 protected:
366 Profile* original_profile_; 388 Profile* original_profile_;
367 }; 389 };
368 390
369 #endif // CHROME_TEST_TESTING_PROFILE_H_ 391 #endif // CHROME_TEST_TESTING_PROFILE_H_
OLDNEW
« no previous file with comments | « chrome/browser/views/options/general_page_view.cc ('k') | chrome/test/testing_profile.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698