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

Side by Side Diff: chrome/browser/chromeos/login/users/fake_chrome_user_manager.h

Issue 824683002: UserManager stack refactoring. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 years, 11 months 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
OLDNEW
(Empty)
1 // Copyright 2015 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.
4
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
7
8 #include <map>
9 #include <string>
10
11 #include "base/memory/scoped_ptr.h"
12 #include "chrome/browser/chromeos/login/user_flow.h"
13 #include "chrome/browser/chromeos/login/users/chrome_user_manager_interface.h"
14 #include "components/user_manager/fake_user_manager.h"
15 #include "components/user_manager/user.h"
16 #include "components/user_manager/user_image/user_image.h"
17 #include "components/user_manager/user_manager_base.h"
18
19 namespace chromeos {
20
21 class FakeSupervisedUserManager;
22
23 // Fake chrome user manager with a barebones implementation. Users can be added
24 // and set as logged in, and those users can be returned.
25 class FakeChromeUserManager : public user_manager::FakeUserManager,
26 public ChromeUserManagerInterface {
27 public:
28 FakeChromeUserManager();
29 ~FakeChromeUserManager() override;
30
31 // Create and add a kiosk app user.
32 void AddKioskAppUser(const std::string& kiosk_app_username);
33
34 // Create and add a public account user.
35 const user_manager::User* AddPublicAccountUser(const std::string& email);
36
37 // Calculates the user name hash and calls UserLoggedIn to login a user.
38 void LoginUser(const std::string& email);
39
40 // UserManager overrides.
41 user_manager::UserList GetUsersAllowedForMultiProfile() const override;
42
43 // Create and add a new user. user_manager::FakeUserManager overrides.
ygorshenin1 2015/01/23 10:18:03 Comment about method's semantics should be in the
merkulova 2015/01/23 12:59:09 Done.
44 const user_manager::User* AddUser(const std::string& email) override;
45
46 // ChromeUserManagerInterface implementation.
47 MultiProfileUserController* GetMultiProfileUserController() override;
48 UserImageManager* GetUserImageManager(const std::string& user_id) override;
49 SupervisedUserManager* GetSupervisedUserManager() override;
50 void SetUserFlow(const std::string& email, UserFlow* flow) override;
51 UserFlow* GetCurrentUserFlow() const override;
52 UserFlow* GetUserFlow(const std::string& email) const override;
53 void ResetUserFlow(const std::string& email) override;
54 user_manager::UserList GetUsersAllowedForSupervisedUsersCreation()
55 const override;
56 void SwitchActiveUser(const std::string& email) override;
57 const std::string& GetOwnerEmail() const override;
58 void SessionStarted() override;
59 void RemoveUser(const std::string& email,
60 user_manager::RemoveUserDelegate* delegate) override;
61
62 void set_owner_email(const std::string& owner_email) {
63 owner_email_ = owner_email;
64 }
65
66 void set_multi_profile_user_controller(
67 MultiProfileUserController* controller) {
68 multi_profile_user_controller_ = controller;
69 }
70
71 private:
72 scoped_ptr<FakeSupervisedUserManager> supervised_user_manager_;
73 std::string owner_email_;
74
75 MultiProfileUserController* multi_profile_user_controller_;
76
77 DISALLOW_COPY_AND_ASSIGN(FakeChromeUserManager);
78 };
79
80 } // namespace chromeos
81
82 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_USERS_FAKE_CHROME_USER_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698