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

Unified Diff: chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc

Issue 369833002: Tests added for user-listing on sign-in screen. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/chromeos/login/users/fake_user_manager.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc
diff --git a/chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc b/chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc
index 198f10bc2ae0ea4af74d0f551eb6928773630c41..340383528ab8074bf45da37341da7511894a7269 100644
--- a/chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc
+++ b/chrome/browser/ui/webui/chromeos/login/signin_userlist_unittest.cc
@@ -15,8 +15,15 @@
namespace {
+const size_t kMaxUsers = 18; // same as in user_selection_screen.cc
dzhioev (left Google) 2014/07/03 11:53:21 Either share this constant, or add comment in user
merkulova 2014/07/03 13:46:06 Done.
const char* kOwner = "owner@gmail.com";
-const char* kUsers[] = {"a@gmail.com", "b@gmail.com", kOwner};
+const char* kUsersPublic[] = {"public0@gmail.com", "public1@gmail.com"};
+const char* kUsers[] = {
+ "a0@gmail.com", "a1@gmail.com", "a2@gmail.com", "a3@gmail.com",
+ "a4@gmail.com", "a5@gmail.com", "a6@gmail.com", "a7@gmail.com",
+ "a8@gmail.com", "a9@gmail.com", "a10@gmail.com", "a11@gmail.com",
+ "a12@gmail.com", "a13@gmail.com", "a14@gmail.com", "a15@gmail.com",
+ "a16@gmail.com", "a17@gmail.com", kOwner, "a18@gmail.com"};
} // namespace
@@ -42,11 +49,16 @@ class SigninPrepareUserListTest
this, TestingBrowserProcess::GetGlobal()->local_state()));
fake_user_manager_->set_multi_profile_user_controller(controller_.get());
+ for (size_t i = 0; i < arraysize(kUsersPublic); ++i) {
+ const std::string user_email(kUsersPublic[i]);
dzhioev (left Google) 2014/07/03 11:53:20 |user_email| is not needed, pass |kUsersPublic[i]|
merkulova 2014/07/03 13:46:06 Done.
+ fake_user_manager_->AddPublicAccountUser(user_email);
+ }
+
for (size_t i = 0; i < arraysize(kUsers); ++i) {
const std::string user_email(kUsers[i]);
fake_user_manager_->AddUser(user_email);
}
- fake_user_manager_->set_owner_email(kUsers[2]);
+ fake_user_manager_->set_owner_email(kOwner);
}
virtual void TearDown() OVERRIDE {
@@ -68,14 +80,44 @@ class SigninPrepareUserListTest
DISALLOW_COPY_AND_ASSIGN(SigninPrepareUserListTest);
};
-TEST_F(SigninPrepareUserListTest, BasicList) {
+TEST_F(SigninPrepareUserListTest, AlwaysKeepOwnerInList) {
UserList users_to_send = UserSelectionScreen::PrepareUserListForSending(
fake_user_manager_->GetUsers(),
kOwner,
true /* is signin to add */);
dzhioev (left Google) 2014/07/03 11:53:20 Add check that list returned by GetUsers has at le
merkulova 2014/07/03 13:46:06 Done.
- size_t list_length = 3;
+ size_t list_length = kMaxUsers;
dzhioev (left Google) 2014/07/03 11:53:20 |list_length| is not needed.
merkulova 2014/07/03 13:46:06 Done.
+ EXPECT_EQ(list_length, users_to_send.size());
+ EXPECT_EQ(kOwner, users_to_send[kMaxUsers-1]->email());
dzhioev (left Google) 2014/07/03 11:53:20 users_to_send.back()->email()
merkulova 2014/07/03 13:46:06 Done.
+
+ fake_user_manager_->RemoveUserFromList("a16@gmail.com");
+ fake_user_manager_->RemoveUserFromList("a17@gmail.com");
+ users_to_send = UserSelectionScreen::PrepareUserListForSending(
+ fake_user_manager_->GetUsers(),
+ kOwner,
+ true /* is signin to add */);
+
+ list_length = 18;
+ EXPECT_EQ(list_length, users_to_send.size());
+ EXPECT_EQ("a18@gmail.com", users_to_send[kMaxUsers-1]->email());
+ EXPECT_EQ(kOwner, users_to_send[kMaxUsers-2]->email());
+}
+
+TEST_F(SigninPrepareUserListTest, PublicAccounts) {
+ UserList users_to_send = UserSelectionScreen::PrepareUserListForSending(
+ fake_user_manager_->GetUsers(),
+ kOwner,
+ true /* is signin to add */);
+ size_t list_length = kMaxUsers;
+ EXPECT_EQ(list_length, users_to_send.size());
+ EXPECT_EQ("a0@gmail.com", users_to_send[0]->email());
dzhioev (left Google) 2014/07/03 11:53:20 users_to_send.front()
merkulova 2014/07/03 13:46:06 Done.
+
+ users_to_send = UserSelectionScreen::PrepareUserListForSending(
+ fake_user_manager_->GetUsers(),
+ kOwner,
+ false /* is signin to add */);
EXPECT_EQ(list_length, users_to_send.size());
+ EXPECT_EQ("public0@gmail.com", users_to_send[0]->email());
dzhioev (left Google) 2014/07/03 11:53:21 users_to_send.front()
merkulova 2014/07/03 13:46:06 Done.
}
} // namespace chromeos
« no previous file with comments | « chrome/browser/chromeos/login/users/fake_user_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698