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

Side by Side Diff: chrome/browser/chromeos/login/user_manager_unittest.cc

Issue 11419184: Add public accounts to UserManager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Removed an unnecessary variable. Created 8 years 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) 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 #include <cstdlib> 5 #include <cstdlib>
6 #include <cstring> 6 #include <cstring>
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "chrome/browser/browser_process.h" 11 #include "chrome/browser/browser_process.h"
12 #include "chrome/browser/chromeos/cros/cros_library.h" 12 #include "chrome/browser/chromeos/cros/cros_library.h"
13 #include "chrome/browser/chromeos/cros/mock_cert_library.h" 13 #include "chrome/browser/chromeos/cros/mock_cert_library.h"
14 #include "chrome/browser/chromeos/login/user.h" 14 #include "chrome/browser/chromeos/login/user.h"
15 #include "chrome/browser/chromeos/login/user_manager.h" 15 #include "chrome/browser/chromeos/login/user_manager.h"
16 #include "chrome/browser/chromeos/login/user_manager_impl.h" 16 #include "chrome/browser/chromeos/login/user_manager_impl.h"
17 #include "chrome/browser/chromeos/settings/cros_settings.h" 17 #include "chrome/browser/chromeos/settings/cros_settings.h"
18 #include "chrome/browser/chromeos/settings/cros_settings_names.h" 18 #include "chrome/browser/chromeos/settings/cros_settings_names.h"
19 #include "chrome/browser/chromeos/settings/cros_settings_provider.h" 19 #include "chrome/browser/chromeos/settings/cros_settings_provider.h"
20 #include "chrome/browser/chromeos/settings/device_settings_service.h"
20 #include "chrome/browser/chromeos/settings/stub_cros_settings_provider.h" 21 #include "chrome/browser/chromeos/settings/stub_cros_settings_provider.h"
21 #include "chrome/browser/prefs/pref_service.h" 22 #include "chrome/browser/prefs/pref_service.h"
22 #include "chrome/test/base/testing_browser_process.h" 23 #include "chrome/test/base/testing_browser_process.h"
23 #include "chrome/test/base/testing_pref_service.h" 24 #include "chrome/test/base/testing_pref_service.h"
24 #include "content/public/test/test_browser_thread.h" 25 #include "content/public/test/test_browser_thread.h"
25 #include "testing/gtest/include/gtest/gtest.h" 26 #include "testing/gtest/include/gtest/gtest.h"
26 27
27 using ::testing::AnyNumber; 28 using ::testing::AnyNumber;
28 29
29 namespace chromeos { 30 namespace chromeos {
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 // Unregister the in-memory local settings instance. 74 // Unregister the in-memory local settings instance.
74 reinterpret_cast<TestingBrowserProcess*>(g_browser_process) 75 reinterpret_cast<TestingBrowserProcess*>(g_browser_process)
75 ->SetLocalState(0); 76 ->SetLocalState(0);
76 77
77 // Restore the real DeviceSettingsProvider. 78 // Restore the real DeviceSettingsProvider.
78 EXPECT_TRUE( 79 EXPECT_TRUE(
79 cros_settings_->RemoveSettingsProvider(&stub_settings_provider_)); 80 cros_settings_->RemoveSettingsProvider(&stub_settings_provider_));
80 cros_settings_->AddSettingsProvider(device_settings_provider_); 81 cros_settings_->AddSettingsProvider(device_settings_provider_);
81 82
82 UserManager::Set(old_user_manager_); 83 UserManager::Set(old_user_manager_);
84
85 // Shut down the DeviceSettingsService.
86 DeviceSettingsService::Get()->Shutdown();
87
88 // Shut down the remaining UserManager instances.
89 if (user_manager_impl)
90 user_manager_impl->Shutdown();
91 UserManager::Get()->Shutdown();
83 } 92 }
84 93
85 bool GetUserManagerEphemeralUsersEnabled() const { 94 bool GetUserManagerEphemeralUsersEnabled() const {
86 return reinterpret_cast<UserManagerImpl*>(UserManager::Get())-> 95 return reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
87 ephemeral_users_enabled_; 96 ephemeral_users_enabled_;
88 } 97 }
89 98
90 void SetUserManagerEphemeralUsersEnabled(bool ephemeral_users_enabled) { 99 void SetUserManagerEphemeralUsersEnabled(bool ephemeral_users_enabled) {
91 reinterpret_cast<UserManagerImpl*>(UserManager::Get())-> 100 reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
92 ephemeral_users_enabled_ = ephemeral_users_enabled; 101 ephemeral_users_enabled_ = ephemeral_users_enabled;
93 } 102 }
94 103
95 const std::string& GetUserManagerOwnerEmail() const { 104 const std::string& GetUserManagerOwnerEmail() const {
96 return reinterpret_cast<UserManagerImpl*>(UserManager::Get())-> 105 return reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
97 owner_email_; 106 owner_email_;
98 } 107 }
99 108
100 void SetUserManagerOwnerEmail(const std::string& owner_email) { 109 void SetUserManagerOwnerEmail(const std::string& owner_email) {
101 reinterpret_cast<UserManagerImpl*>(UserManager::Get())-> 110 reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
102 owner_email_ = owner_email; 111 owner_email_ = owner_email;
103 } 112 }
104 113
105 void ResetUserManager() { 114 void ResetUserManager() {
115 if (user_manager_impl)
116 user_manager_impl->Shutdown();
106 user_manager_impl.reset(new UserManagerImpl()); 117 user_manager_impl.reset(new UserManagerImpl());
107 UserManager::Set(user_manager_impl.get()); 118 UserManager::Set(user_manager_impl.get());
108 } 119 }
109 120
110 void SetDeviceSettings(bool ephemeral_users_enabled, 121 void SetDeviceSettings(bool ephemeral_users_enabled,
111 const std::string &owner) { 122 const std::string &owner) {
112 base::FundamentalValue 123 base::FundamentalValue
113 ephemeral_users_enabled_value(ephemeral_users_enabled); 124 ephemeral_users_enabled_value(ephemeral_users_enabled);
114 stub_settings_provider_.Set(kAccountsPrefEphemeralUsersEnabled, 125 stub_settings_provider_.Set(kAccountsPrefEphemeralUsersEnabled,
115 ephemeral_users_enabled_value); 126 ephemeral_users_enabled_value);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 ResetUserManager(); 191 ResetUserManager();
181 UserManager::Get()->UserLoggedIn("user0@invalid.domain", true); 192 UserManager::Get()->UserLoggedIn("user0@invalid.domain", true);
182 ResetUserManager(); 193 ResetUserManager();
183 194
184 const UserList* users = &UserManager::Get()->GetUsers(); 195 const UserList* users = &UserManager::Get()->GetUsers();
185 EXPECT_TRUE(users->size() == 1); 196 EXPECT_TRUE(users->size() == 1);
186 EXPECT_EQ((*users)[0]->email(), "owner@invalid.domain"); 197 EXPECT_EQ((*users)[0]->email(), "owner@invalid.domain");
187 } 198 }
188 199
189 } // namespace chromeos 200 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698