summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/test_extension_system.cc
diff options
context:
space:
mode:
authorbartfab@google.com <bartfab@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-22 16:26:54 +0000
committerbartfab@google.com <bartfab@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-22 16:26:54 +0000
commit9a68d3a51fffe213ad2266acd93bb150fb12c06e (patch)
treef0c55990f13fc0fb05fdf6be5c19a9e84bb4429a /chrome/browser/extensions/test_extension_system.cc
parent617acac0976bc52ec20432ccb4da7c3f36d1d3ff (diff)
downloadchromium_src-9a68d3a51fffe213ad2266acd93bb150fb12c06e.zip
chromium_src-9a68d3a51fffe213ad2266acd93bb150fb12c06e.tar.gz
chromium_src-9a68d3a51fffe213ad2266acd93bb150fb12c06e.tar.bz2
Re-land 195501 with fixed test
Make UserManager a non-Lazy singleton This CL turns the UserManager from a LazyInstance singleton with an unpredictable lifetime into a singleton that is explicity instantiated and torn down at well-defined points in the browser's lifetime. BUG=None TBR=nkostylev@chromium.org Review URL: https://codereview.chromium.org/13842022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195529 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/test_extension_system.cc')
-rw-r--r--chrome/browser/extensions/test_extension_system.cc15
1 files changed, 6 insertions, 9 deletions
diff --git a/chrome/browser/extensions/test_extension_system.cc b/chrome/browser/extensions/test_extension_system.cc
index 9b18015..ba32742 100644
--- a/chrome/browser/extensions/test_extension_system.cc
+++ b/chrome/browser/extensions/test_extension_system.cc
@@ -28,7 +28,7 @@
#include "content/public/browser/browser_thread.h"
#if defined(OS_CHROMEOS)
-#include "chrome/browser/chromeos/settings/cros_settings.h"
+#include "chrome/browser/chromeos/login/user_manager.h"
#endif
using content::BrowserThread;
@@ -38,13 +38,6 @@ namespace extensions {
TestExtensionSystem::TestExtensionSystem(Profile* profile)
: profile_(profile),
info_map_(new ExtensionInfoMap()) {
-#if defined OS_CHROMEOS
- // TestExtensionSystem may or may not be created within
- // TestExtensionEnvironment, so only create a ScopedTestCrosSettings instance
- // if none has been created.
- if (!chromeos::CrosSettings::IsInitialized())
- test_cros_settings_.reset(new chromeos::ScopedTestCrosSettings);
-#endif
}
TestExtensionSystem::~TestExtensionSystem() {
@@ -99,7 +92,11 @@ ExtensionService* TestExtensionSystem::CreateExtensionService(
management_policy_.reset(new ManagementPolicy());
management_policy_->RegisterProvider(
standard_management_policy_provider_.get());
- extension_service_.reset(new ExtensionService(profile_,
+#if defined(OS_CHROMEOS)
+ if (!test_user_manager_)
+ test_user_manager_.reset(new chromeos::ScopedTestUserManager);
+#endif
+ extension_service_.reset(new ExtensionService(profile_,
command_line,
install_directory,
extension_prefs_.get(),