| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/compiler_specific.h" | 5 #include "base/compiler_specific.h" |
| 6 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h" | 6 #include "chrome/browser/chromeos/login/screens/user_selection_screen.h" |
| 7 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h" | 7 #include "chrome/browser/chromeos/login/users/fake_chrome_user_manager.h" |
| 8 #include "chrome/browser/chromeos/login/users/multi_profile_user_controller.h" | 8 #include "chrome/browser/chromeos/login/users/multi_profile_user_controller.h" |
| 9 #include "chrome/browser/chromeos/login/users/multi_profile_user_controller_dele
gate.h" | 9 #include "chrome/browser/chromeos/login/users/multi_profile_user_controller_dele
gate.h" |
| 10 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" | 10 #include "chrome/browser/chromeos/login/users/scoped_user_manager_enabler.h" |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 | 42 |
| 43 void SetUp() override { | 43 void SetUp() override { |
| 44 profile_manager_.reset( | 44 profile_manager_.reset( |
| 45 new TestingProfileManager(TestingBrowserProcess::GetGlobal())); | 45 new TestingProfileManager(TestingBrowserProcess::GetGlobal())); |
| 46 ASSERT_TRUE(profile_manager_->SetUp()); | 46 ASSERT_TRUE(profile_manager_->SetUp()); |
| 47 controller_.reset(new MultiProfileUserController( | 47 controller_.reset(new MultiProfileUserController( |
| 48 this, TestingBrowserProcess::GetGlobal()->local_state())); | 48 this, TestingBrowserProcess::GetGlobal()->local_state())); |
| 49 fake_user_manager_->set_multi_profile_user_controller(controller_.get()); | 49 fake_user_manager_->set_multi_profile_user_controller(controller_.get()); |
| 50 | 50 |
| 51 for (size_t i = 0; i < arraysize(kUsersPublic); ++i) | 51 for (size_t i = 0; i < arraysize(kUsersPublic); ++i) |
| 52 fake_user_manager_->AddPublicAccountUser( | 52 fake_user_manager_->AddPublicAccountUser(kUsersPublic[i]); |
| 53 AccountId::FromUserEmail(kUsersPublic[i])); | |
| 54 | 53 |
| 55 for (size_t i = 0; i < arraysize(kUsers); ++i) | 54 for (size_t i = 0; i < arraysize(kUsers); ++i) |
| 56 fake_user_manager_->AddUser(AccountId::FromUserEmail(kUsers[i])); | 55 fake_user_manager_->AddUser(kUsers[i]); |
| 57 | 56 |
| 58 fake_user_manager_->set_owner_id(AccountId::FromUserEmail(kOwner)); | 57 fake_user_manager_->set_owner_email(kOwner); |
| 59 } | 58 } |
| 60 | 59 |
| 61 void TearDown() override { | 60 void TearDown() override { |
| 62 controller_.reset(); | 61 controller_.reset(); |
| 63 profile_manager_.reset(); | 62 profile_manager_.reset(); |
| 64 } | 63 } |
| 65 | 64 |
| 66 // MultiProfileUserControllerDelegate overrides: | 65 // MultiProfileUserControllerDelegate overrides: |
| 67 void OnUserNotAllowed(const std::string& user_email) override {} | 66 void OnUserNotAllowed(const std::string& user_email) override {} |
| 68 | 67 |
| 69 FakeChromeUserManager* fake_user_manager_; | 68 FakeChromeUserManager* fake_user_manager_; |
| 70 ScopedUserManagerEnabler user_manager_enabler_; | 69 ScopedUserManagerEnabler user_manager_enabler_; |
| 71 scoped_ptr<TestingProfileManager> profile_manager_; | 70 scoped_ptr<TestingProfileManager> profile_manager_; |
| 72 std::map<std::string, proximity_auth::ScreenlockBridge::LockHandler::AuthType> | 71 std::map<std::string, proximity_auth::ScreenlockBridge::LockHandler::AuthType> |
| 73 user_auth_type_map; | 72 user_auth_type_map; |
| 74 scoped_ptr<MultiProfileUserController> controller_; | 73 scoped_ptr<MultiProfileUserController> controller_; |
| 75 | 74 |
| 76 DISALLOW_COPY_AND_ASSIGN(SigninPrepareUserListTest); | 75 DISALLOW_COPY_AND_ASSIGN(SigninPrepareUserListTest); |
| 77 }; | 76 }; |
| 78 | 77 |
| 79 TEST_F(SigninPrepareUserListTest, AlwaysKeepOwnerInList) { | 78 TEST_F(SigninPrepareUserListTest, AlwaysKeepOwnerInList) { |
| 80 EXPECT_LT(kMaxUsers, fake_user_manager_->GetUsers().size()); | 79 EXPECT_LT(kMaxUsers, fake_user_manager_->GetUsers().size()); |
| 81 user_manager::UserList users_to_send = | 80 user_manager::UserList users_to_send = |
| 82 UserSelectionScreen::PrepareUserListForSending( | 81 UserSelectionScreen::PrepareUserListForSending( |
| 83 fake_user_manager_->GetUsers(), kOwner, true /* is signin to add */); | 82 fake_user_manager_->GetUsers(), kOwner, true /* is signin to add */); |
| 84 | 83 |
| 85 EXPECT_EQ(kMaxUsers, users_to_send.size()); | 84 EXPECT_EQ(kMaxUsers, users_to_send.size()); |
| 86 EXPECT_EQ(kOwner, users_to_send.back()->email()); | 85 EXPECT_EQ(kOwner, users_to_send.back()->email()); |
| 87 | 86 |
| 88 fake_user_manager_->RemoveUserFromList( | 87 fake_user_manager_->RemoveUserFromList("a16@gmail.com"); |
| 89 AccountId::FromUserEmail("a16@gmail.com")); | 88 fake_user_manager_->RemoveUserFromList("a17@gmail.com"); |
| 90 fake_user_manager_->RemoveUserFromList( | |
| 91 AccountId::FromUserEmail("a17@gmail.com")); | |
| 92 users_to_send = UserSelectionScreen::PrepareUserListForSending( | 89 users_to_send = UserSelectionScreen::PrepareUserListForSending( |
| 93 fake_user_manager_->GetUsers(), | 90 fake_user_manager_->GetUsers(), |
| 94 kOwner, | 91 kOwner, |
| 95 true /* is signin to add */); | 92 true /* is signin to add */); |
| 96 | 93 |
| 97 EXPECT_EQ(kMaxUsers, users_to_send.size()); | 94 EXPECT_EQ(kMaxUsers, users_to_send.size()); |
| 98 EXPECT_EQ("a18@gmail.com", users_to_send.back()->email()); | 95 EXPECT_EQ("a18@gmail.com", users_to_send.back()->email()); |
| 99 EXPECT_EQ(kOwner, users_to_send[kMaxUsers-2]->email()); | 96 EXPECT_EQ(kOwner, users_to_send[kMaxUsers-2]->email()); |
| 100 } | 97 } |
| 101 | 98 |
| 102 TEST_F(SigninPrepareUserListTest, PublicAccounts) { | 99 TEST_F(SigninPrepareUserListTest, PublicAccounts) { |
| 103 user_manager::UserList users_to_send = | 100 user_manager::UserList users_to_send = |
| 104 UserSelectionScreen::PrepareUserListForSending( | 101 UserSelectionScreen::PrepareUserListForSending( |
| 105 fake_user_manager_->GetUsers(), kOwner, true /* is signin to add */); | 102 fake_user_manager_->GetUsers(), kOwner, true /* is signin to add */); |
| 106 | 103 |
| 107 EXPECT_EQ(kMaxUsers, users_to_send.size()); | 104 EXPECT_EQ(kMaxUsers, users_to_send.size()); |
| 108 EXPECT_EQ("a0@gmail.com", users_to_send.front()->email()); | 105 EXPECT_EQ("a0@gmail.com", users_to_send.front()->email()); |
| 109 | 106 |
| 110 users_to_send = UserSelectionScreen::PrepareUserListForSending( | 107 users_to_send = UserSelectionScreen::PrepareUserListForSending( |
| 111 fake_user_manager_->GetUsers(), | 108 fake_user_manager_->GetUsers(), |
| 112 kOwner, | 109 kOwner, |
| 113 false /* is signin to add */); | 110 false /* is signin to add */); |
| 114 | 111 |
| 115 EXPECT_EQ(kMaxUsers, users_to_send.size()); | 112 EXPECT_EQ(kMaxUsers, users_to_send.size()); |
| 116 EXPECT_EQ("public0@gmail.com", users_to_send.front()->email()); | 113 EXPECT_EQ("public0@gmail.com", users_to_send.front()->email()); |
| 117 } | 114 } |
| 118 | 115 |
| 119 } // namespace chromeos | 116 } // namespace chromeos |
| OLD | NEW |