| Index: chromeos/login/login_state_unittest.cc
|
| diff --git a/chromeos/login/login_state_unittest.cc b/chromeos/login/login_state_unittest.cc
|
| index 431b419ee01f0fb0c9d6a33e732a95c426629d3d..34d3b8e2b5487b769ee62d1541250a20e392913e 100644
|
| --- a/chromeos/login/login_state_unittest.cc
|
| +++ b/chromeos/login/login_state_unittest.cc
|
| @@ -9,6 +9,10 @@
|
| #include "chromeos/chromeos_switches.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| +namespace {
|
| +const char kTestUserHash[] = "testuserhash";
|
| +} // namespace
|
| +
|
| namespace chromeos {
|
|
|
| class LoginStateTest : public testing::Test,
|
| @@ -124,4 +128,33 @@ TEST_F(LoginStateTest, TestLoggedInStateChangedObserverOnUserTypeChange) {
|
| LoginState::Get()->GetLoggedInUserType());
|
| }
|
|
|
| +TEST_F(LoginStateTest, TestPrimaryUser) {
|
| + EXPECT_FALSE(LoginState::Get()->IsUserLoggedIn());
|
| + EXPECT_FALSE(LoginState::Get()->IsInSafeMode());
|
| + EXPECT_EQ(LoginState::LOGGED_IN_USER_NONE, logged_in_user_type_);
|
| + EXPECT_EQ(LoginState::LOGGED_IN_USER_NONE,
|
| + LoginState::Get()->GetLoggedInUserType());
|
| +
|
| + // Setting login state to ACTIVE and setting the primary user.
|
| + LoginState::Get()->SetLoggedInStateAndPrimaryUser(
|
| + LoginState::LOGGED_IN_ACTIVE,
|
| + LoginState::LOGGED_IN_USER_REGULAR,
|
| + kTestUserHash);
|
| + EXPECT_EQ(LoginState::LOGGED_IN_USER_REGULAR,
|
| + LoginState::Get()->GetLoggedInUserType());
|
| + EXPECT_TRUE(LoginState::Get()->IsUserLoggedIn());
|
| + EXPECT_FALSE(LoginState::Get()->IsInSafeMode());
|
| + EXPECT_EQ(kTestUserHash, LoginState::Get()->primary_user_hash());
|
| +
|
| + EXPECT_EQ(1U, GetNewLoginStateChangesCount());
|
| + EXPECT_EQ(LoginState::LOGGED_IN_USER_REGULAR, logged_in_user_type_);
|
| +
|
| + // Set the logged in state to NONE. Should clear the primary user.
|
| + LoginState::Get()->SetLoggedInState(LoginState::LOGGED_IN_NONE,
|
| + LoginState::LOGGED_IN_USER_NONE);
|
| + EXPECT_FALSE(LoginState::Get()->IsUserLoggedIn());
|
| + EXPECT_TRUE(LoginState::Get()->primary_user_hash().empty());
|
| + EXPECT_EQ(1U, GetNewLoginStateChangesCount());
|
| +}
|
| +
|
| } // namespace chromeos
|
|
|