summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos/settings/device_settings_service.cc
diff options
context:
space:
mode:
authorbartfab@chromium.org <bartfab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-24 00:11:51 +0000
committerbartfab@chromium.org <bartfab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-04-24 00:11:51 +0000
commite4854dc542c049d2bcbf4587be05a5d5cc4acf25 (patch)
tree5daf22a82ee40ed51f75a028248930ed01f6f5aa /chrome/browser/chromeos/settings/device_settings_service.cc
parentf3b3ba7bc2f675606d5def3a0982b3988e529b13 (diff)
downloadchromium_src-e4854dc542c049d2bcbf4587be05a5d5cc4acf25.zip
chromium_src-e4854dc542c049d2bcbf4587be05a5d5cc4acf25.tar.gz
chromium_src-e4854dc542c049d2bcbf4587be05a5d5cc4acf25.tar.bz2
Explicitly construct/destruct UserManager and dependencies in tests
The ScopedTestUserManager initializes and subsequently tears down the UserManager singleton only if it has not been initialized already. This allows ScopedTestUserManagers to be nested but also means that it is never clear which ScopedTestUserManager actually did end up initializing the singleton. The same goes for ScopedTestCrosSettings. This CL makes the initialization and teardown explicit. The helper classes now explicitly manage the initialization and teardown of their respective singletons and cannot be nested anymore. BUG=None For tests that need to instantiate a UserManager: TBR=sky,rkc,aa,thestig,asvitkine,davemoore,kinuko,pkotwicz,davemoore,akalin Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=195811 Review URL: https://chromiumcodereview.appspot.com/14192040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195951 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/chromeos/settings/device_settings_service.cc')
-rw-r--r--chrome/browser/chromeos/settings/device_settings_service.cc10
1 files changed, 9 insertions, 1 deletions
diff --git a/chrome/browser/chromeos/settings/device_settings_service.cc b/chrome/browser/chromeos/settings/device_settings_service.cc
index 18bc461..dbe605f 100644
--- a/chrome/browser/chromeos/settings/device_settings_service.cc
+++ b/chrome/browser/chromeos/settings/device_settings_service.cc
@@ -60,7 +60,7 @@ bool DeviceSettingsService::IsInitialized() {
// static
void DeviceSettingsService::Shutdown() {
- CHECK(g_device_settings_service);
+ DCHECK(g_device_settings_service);
delete g_device_settings_service;
g_device_settings_service = NULL;
}
@@ -316,4 +316,12 @@ void DeviceSettingsService::HandleCompletedOperation(
StartNextOperation();
}
+ScopedTestDeviceSettingsService::ScopedTestDeviceSettingsService() {
+ DeviceSettingsService::Initialize();
+}
+
+ScopedTestDeviceSettingsService::~ScopedTestDeviceSettingsService() {
+ DeviceSettingsService::Shutdown();
+}
+
} // namespace chromeos