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
3 // found in the LICENSE file.
5 #include "chrome/browser/chromeos/login/mock_user_manager.h"
7 #include "chrome/browser/chromeos/login/fake_supervised_user_manager.h"
11 MockUserManager::MockUserManager()
12 : user_flow_(new DefaultUserFlow()),
13 supervised_user_manager_(new FakeSupervisedUserManager()) {}
15 MockUserManager::~MockUserManager() {
19 const UserList& MockUserManager::GetUsers() const {
23 const User* MockUserManager::GetLoggedInUser() const {
24 return user_list_.empty() ? NULL : user_list_.front();
27 User* MockUserManager::GetLoggedInUser() {
28 return user_list_.empty() ? NULL : user_list_.front();
31 UserList MockUserManager::GetUnlockUsers() const {
35 const std::string& MockUserManager::GetOwnerEmail() {
36 return GetLoggedInUser()->email();
39 const User* MockUserManager::GetActiveUser() const {
40 return GetLoggedInUser();
43 User* MockUserManager::GetActiveUser() {
44 return GetLoggedInUser();
47 const User* MockUserManager::GetPrimaryUser() const {
48 return GetLoggedInUser();
51 User* MockUserManager::GetUserByProfile(Profile* profile) const {
52 return user_list_.empty() ? NULL : user_list_.front();
55 MultiProfileUserController* MockUserManager::GetMultiProfileUserController() {
59 UserImageManager* MockUserManager::GetUserImageManager(
60 const std::string& user_id) {
64 SupervisedUserManager* MockUserManager::GetSupervisedUserManager() {
65 return supervised_user_manager_.get();
68 // Creates a new User instance.
69 void MockUserManager::SetActiveUser(const std::string& email) {
74 UserFlow* MockUserManager::GetCurrentUserFlow() const {
75 return user_flow_.get();
78 UserFlow* MockUserManager::GetUserFlow(const std::string&) const {
79 return user_flow_.get();
82 User* MockUserManager::CreatePublicAccountUser(const std::string& email) {
84 user_list_.push_back(User::CreatePublicAccountUser(email));
85 return user_list_.back();
88 void MockUserManager::AddUser(const std::string& email) {
89 user_list_.push_back(User::CreateRegularUser(email));
92 void MockUserManager::ClearUserList() {
93 // Can't use STLDeleteElements because of the protected destructor of User.
94 UserList::iterator user;
95 for (user = user_list_.begin(); user != user_list_.end(); ++user)
100 bool MockUserManager::RespectLocalePreference(
103 scoped_ptr<locale_util::SwitchLanguageCallback> callback) const {
107 } // namespace chromeos