Chromium Code Reviews| Index: chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc |
| diff --git a/chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc b/chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc |
| index d731dd1a21e3d6394a08c77cbc570b51b6b0f0fd..6d0159f715376c4dfaa87c3d2c4d22b4a36fe724 100644 |
| --- a/chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc |
| +++ b/chrome/browser/chromeos/login/users/fake_chrome_user_manager.cc |
| @@ -103,6 +103,16 @@ user_manager::User* FakeChromeUserManager::AddArcKioskAppUser( |
| return user; |
| } |
| +user_manager::User* FakeChromeUserManager::AddSupervisedUser( |
| + const AccountId& account_id) { |
| + user_manager::User* user = |
| + user_manager::User::CreateSupervisedUser(account_id); |
| + user->set_username_hash(ProfileHelper::GetUserIdHashByUserIdForTesting( |
| + account_id.GetUserEmail())); |
| + users_.push_back(user); |
| + return user; |
| +} |
| + |
| const user_manager::User* FakeChromeUserManager::AddPublicAccountUser( |
| const AccountId& account_id) { |
| user_manager::User* user = |
| @@ -122,10 +132,19 @@ bool FakeChromeUserManager::AreEphemeralUsersEnabled() const { |
| return fake_ephemeral_users_enabled_; |
| } |
| -void FakeChromeUserManager::LoginUser(const AccountId& account_id) { |
| +void FakeChromeUserManager::LoginUser(const AccountId& account_id, |
| + bool set_profile_created) { |
| UserLoggedIn(account_id, ProfileHelper::GetUserIdHashByUserIdForTesting( |
| account_id.GetUserEmail()), |
| false /* browser_restart */); |
| + |
| + // NOTE: This does not match production. See function comment. |
| + if (set_profile_created) { |
| + for (auto* user : users_) { |
| + if (user->GetAccountId() == account_id) |
| + user->set_profile_is_created(); |
|
xiyuan
2017/04/21 23:14:35
break; ?
James Cook
2017/04/24 17:47:26
Done.
|
| + } |
| + } |
| } |
| BootstrapManager* FakeChromeUserManager::GetBootstrapManager() { |
| @@ -370,7 +389,6 @@ void FakeChromeUserManager::UserLoggedIn(const AccountId& account_id, |
| for (auto* user : users_) { |
| if (user->username_hash() == username_hash) { |
| user->set_is_logged_in(true); |
| - user->set_profile_is_created(); |
| logged_in_users_.push_back(user); |
| if (!primary_user_) |
| @@ -378,6 +396,7 @@ void FakeChromeUserManager::UserLoggedIn(const AccountId& account_id, |
| break; |
| } |
| } |
| + // TODO(jamescook): This should set active_user_ and call NotifyOnLogin(). |
| } |
| void FakeChromeUserManager::SwitchToLastActiveUser() { |