| OLD | NEW |
| 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 #ifndef CHROME_TEST_BASE_TESTING_PROFILE_H_ | 5 #ifndef CHROME_TEST_BASE_TESTING_PROFILE_H_ |
| 6 #define CHROME_TEST_BASE_TESTING_PROFILE_H_ | 6 #define CHROME_TEST_BASE_TESTING_PROFILE_H_ |
| 7 | 7 |
| 8 #include <memory> | 8 #include <memory> |
| 9 #include <string> | 9 #include <string> |
| 10 #include <utility> | 10 #include <utility> |
| 11 #include <vector> | 11 #include <vector> |
| 12 | 12 |
| 13 #include "base/files/scoped_temp_dir.h" | 13 #include "base/files/scoped_temp_dir.h" |
| 14 #include "base/macros.h" | 14 #include "base/macros.h" |
| 15 #include "base/memory/ref_counted.h" | 15 #include "base/memory/ref_counted.h" |
| 16 #include "build/build_config.h" | 16 #include "build/build_config.h" |
| 17 #include "chrome/browser/profiles/profile.h" | 17 #include "chrome/browser/profiles/profile.h" |
| 18 #include "components/domain_reliability/clear_mode.h" | 18 #include "components/domain_reliability/clear_mode.h" |
| 19 #include "components/keyed_service/content/browser_context_keyed_service_factory
.h" | 19 #include "components/keyed_service/content/browser_context_keyed_service_factory
.h" |
| 20 #include "extensions/features/features.h" |
| 20 | 21 |
| 21 class BrowserContextDependencyManager; | 22 class BrowserContextDependencyManager; |
| 22 class ExtensionSpecialStoragePolicy; | 23 class ExtensionSpecialStoragePolicy; |
| 23 class HostContentSettingsMap; | 24 class HostContentSettingsMap; |
| 24 | 25 |
| 25 namespace content { | 26 namespace content { |
| 26 class MockResourceContext; | 27 class MockResourceContext; |
| 27 class SSLHostStateDelegate; | 28 class SSLHostStateDelegate; |
| 28 class ZoomLevelDelegate; | 29 class ZoomLevelDelegate; |
| 29 } | 30 } |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 // and must manage its lifetime so it continues to exist until profile | 82 // and must manage its lifetime so it continues to exist until profile |
| 82 // initialization is complete. | 83 // initialization is complete. |
| 83 void SetDelegate(Delegate* delegate); | 84 void SetDelegate(Delegate* delegate); |
| 84 | 85 |
| 85 // Adds a testing factory to the TestingProfile. These testing factories | 86 // Adds a testing factory to the TestingProfile. These testing factories |
| 86 // are applied before the ProfileKeyedServices are created. | 87 // are applied before the ProfileKeyedServices are created. |
| 87 void AddTestingFactory( | 88 void AddTestingFactory( |
| 88 BrowserContextKeyedServiceFactory* service_factory, | 89 BrowserContextKeyedServiceFactory* service_factory, |
| 89 BrowserContextKeyedServiceFactory::TestingFactoryFunction callback); | 90 BrowserContextKeyedServiceFactory::TestingFactoryFunction callback); |
| 90 | 91 |
| 91 #if defined(ENABLE_EXTENSIONS) | 92 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 92 // Sets the ExtensionSpecialStoragePolicy to be returned by | 93 // Sets the ExtensionSpecialStoragePolicy to be returned by |
| 93 // GetExtensionSpecialStoragePolicy(). | 94 // GetExtensionSpecialStoragePolicy(). |
| 94 void SetExtensionSpecialStoragePolicy( | 95 void SetExtensionSpecialStoragePolicy( |
| 95 scoped_refptr<ExtensionSpecialStoragePolicy> policy); | 96 scoped_refptr<ExtensionSpecialStoragePolicy> policy); |
| 96 #endif | 97 #endif |
| 97 | 98 |
| 98 // Sets the path to the directory to be used to hold profile data. | 99 // Sets the path to the directory to be used to hold profile data. |
| 99 void SetPath(const base::FilePath& path); | 100 void SetPath(const base::FilePath& path); |
| 100 | 101 |
| 101 // Sets the PrefService to be used by this profile. | 102 // Sets the PrefService to be used by this profile. |
| (...skipping 21 matching lines...) Expand all Loading... |
| 123 // need to customize the Builder, or access TestingProfile member functions, | 124 // need to customize the Builder, or access TestingProfile member functions, |
| 124 // you can use original_profile->GetOffTheRecordProfile(). | 125 // you can use original_profile->GetOffTheRecordProfile(). |
| 125 TestingProfile* BuildIncognito(TestingProfile* original_profile); | 126 TestingProfile* BuildIncognito(TestingProfile* original_profile); |
| 126 | 127 |
| 127 private: | 128 private: |
| 128 // If true, Build() has already been called. | 129 // If true, Build() has already been called. |
| 129 bool build_called_; | 130 bool build_called_; |
| 130 | 131 |
| 131 // Various staging variables where values are held until Build() is invoked. | 132 // Various staging variables where values are held until Build() is invoked. |
| 132 std::unique_ptr<sync_preferences::PrefServiceSyncable> pref_service_; | 133 std::unique_ptr<sync_preferences::PrefServiceSyncable> pref_service_; |
| 133 #if defined(ENABLE_EXTENSIONS) | 134 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 134 scoped_refptr<ExtensionSpecialStoragePolicy> extension_policy_; | 135 scoped_refptr<ExtensionSpecialStoragePolicy> extension_policy_; |
| 135 #endif | 136 #endif |
| 136 base::FilePath path_; | 137 base::FilePath path_; |
| 137 Delegate* delegate_; | 138 Delegate* delegate_; |
| 138 bool guest_session_; | 139 bool guest_session_; |
| 139 std::string supervised_user_id_; | 140 std::string supervised_user_id_; |
| 140 std::unique_ptr<policy::PolicyService> policy_service_; | 141 std::unique_ptr<policy::PolicyService> policy_service_; |
| 141 TestingFactories testing_factories_; | 142 TestingFactories testing_factories_; |
| 142 std::string profile_name_; | 143 std::string profile_name_; |
| 143 | 144 |
| (...skipping 10 matching lines...) Expand all Loading... |
| 154 | 155 |
| 155 // Multi-profile aware constructor that takes the path to a directory managed | 156 // Multi-profile aware constructor that takes the path to a directory managed |
| 156 // for this profile and a delegate. This constructor is meant to be used | 157 // for this profile and a delegate. This constructor is meant to be used |
| 157 // for unittesting the ProfileManager. | 158 // for unittesting the ProfileManager. |
| 158 TestingProfile(const base::FilePath& path, Delegate* delegate); | 159 TestingProfile(const base::FilePath& path, Delegate* delegate); |
| 159 | 160 |
| 160 // Full constructor allowing the setting of all possible instance data. | 161 // Full constructor allowing the setting of all possible instance data. |
| 161 // Callers should use Builder::Build() instead of invoking this constructor. | 162 // Callers should use Builder::Build() instead of invoking this constructor. |
| 162 TestingProfile(const base::FilePath& path, | 163 TestingProfile(const base::FilePath& path, |
| 163 Delegate* delegate, | 164 Delegate* delegate, |
| 164 #if defined(ENABLE_EXTENSIONS) | 165 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 165 scoped_refptr<ExtensionSpecialStoragePolicy> extension_policy, | 166 scoped_refptr<ExtensionSpecialStoragePolicy> extension_policy, |
| 166 #endif | 167 #endif |
| 167 std::unique_ptr<sync_preferences::PrefServiceSyncable> prefs, | 168 std::unique_ptr<sync_preferences::PrefServiceSyncable> prefs, |
| 168 TestingProfile* parent, | 169 TestingProfile* parent, |
| 169 bool guest_session, | 170 bool guest_session, |
| 170 const std::string& supervised_user_id, | 171 const std::string& supervised_user_id, |
| 171 std::unique_ptr<policy::PolicyService> policy_service, | 172 std::unique_ptr<policy::PolicyService> policy_service, |
| 172 const TestingFactories& factories, | 173 const TestingFactories& factories, |
| 173 const std::string& profile_name); | 174 const std::string& profile_name); |
| 174 | 175 |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 force_incognito_ = force_incognito; | 268 force_incognito_ = force_incognito; |
| 268 } | 269 } |
| 269 | 270 |
| 270 Profile* GetOffTheRecordProfile() override; | 271 Profile* GetOffTheRecordProfile() override; |
| 271 void DestroyOffTheRecordProfile() override {} | 272 void DestroyOffTheRecordProfile() override {} |
| 272 bool HasOffTheRecordProfile() override; | 273 bool HasOffTheRecordProfile() override; |
| 273 Profile* GetOriginalProfile() override; | 274 Profile* GetOriginalProfile() override; |
| 274 bool IsSupervised() const override; | 275 bool IsSupervised() const override; |
| 275 bool IsChild() const override; | 276 bool IsChild() const override; |
| 276 bool IsLegacySupervised() const override; | 277 bool IsLegacySupervised() const override; |
| 277 #if defined(ENABLE_EXTENSIONS) | 278 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 278 void SetExtensionSpecialStoragePolicy( | 279 void SetExtensionSpecialStoragePolicy( |
| 279 ExtensionSpecialStoragePolicy* extension_special_storage_policy); | 280 ExtensionSpecialStoragePolicy* extension_special_storage_policy); |
| 280 #endif | 281 #endif |
| 281 ExtensionSpecialStoragePolicy* GetExtensionSpecialStoragePolicy() override; | 282 ExtensionSpecialStoragePolicy* GetExtensionSpecialStoragePolicy() override; |
| 282 // TODO(ajwong): Remove this API in favor of directly retrieving the | 283 // TODO(ajwong): Remove this API in favor of directly retrieving the |
| 283 // CookieStore from the StoragePartition after ExtensionURLRequestContext | 284 // CookieStore from the StoragePartition after ExtensionURLRequestContext |
| 284 // has been removed. | 285 // has been removed. |
| 285 net::CookieStore* GetCookieStore(); | 286 net::CookieStore* GetCookieStore(); |
| 286 | 287 |
| 287 PrefService* GetPrefs() override; | 288 PrefService* GetPrefs() override; |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 | 379 |
| 379 std::string supervised_user_id_; | 380 std::string supervised_user_id_; |
| 380 | 381 |
| 381 // Did the last session exit cleanly? Default is true. | 382 // Did the last session exit cleanly? Default is true. |
| 382 bool last_session_exited_cleanly_; | 383 bool last_session_exited_cleanly_; |
| 383 | 384 |
| 384 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; | 385 scoped_refptr<HostContentSettingsMap> host_content_settings_map_; |
| 385 | 386 |
| 386 base::FilePath last_selected_directory_; | 387 base::FilePath last_selected_directory_; |
| 387 | 388 |
| 388 #if defined(ENABLE_EXTENSIONS) | 389 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 389 scoped_refptr<ExtensionSpecialStoragePolicy> | 390 scoped_refptr<ExtensionSpecialStoragePolicy> |
| 390 extension_special_storage_policy_; | 391 extension_special_storage_policy_; |
| 391 #endif | 392 #endif |
| 392 | 393 |
| 393 // The proxy prefs tracker. | 394 // The proxy prefs tracker. |
| 394 std::unique_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; | 395 std::unique_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; |
| 395 | 396 |
| 396 // The path to this profile. This will be valid in either of the two above | 397 // The path to this profile. This will be valid in either of the two above |
| 397 // cases. | 398 // cases. |
| 398 base::FilePath profile_path_; | 399 base::FilePath profile_path_; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 413 | 414 |
| 414 // Weak pointer to a delegate for indicating that a profile was created. | 415 // Weak pointer to a delegate for indicating that a profile was created. |
| 415 Delegate* delegate_; | 416 Delegate* delegate_; |
| 416 | 417 |
| 417 std::string profile_name_; | 418 std::string profile_name_; |
| 418 | 419 |
| 419 std::unique_ptr<policy::PolicyService> policy_service_; | 420 std::unique_ptr<policy::PolicyService> policy_service_; |
| 420 }; | 421 }; |
| 421 | 422 |
| 422 #endif // CHROME_TEST_BASE_TESTING_PROFILE_H_ | 423 #endif // CHROME_TEST_BASE_TESTING_PROFILE_H_ |
| OLD | NEW |