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

Unified Diff: chrome/browser/chromeos/login/user_manager_unittest.cc

Issue 17546004: Added policy for disabling locally managed users. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Little fix. Created 7 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
Index: chrome/browser/chromeos/login/user_manager_unittest.cc
diff --git a/chrome/browser/chromeos/login/user_manager_unittest.cc b/chrome/browser/chromeos/login/user_manager_unittest.cc
index b0fe8d8e8b1bdf0e1820f61af0327199926797c5..d948ee77391cf6050598d035eb6cbf7a2b0f7a1f 100644
--- a/chrome/browser/chromeos/login/user_manager_unittest.cc
+++ b/chrome/browser/chromeos/login/user_manager_unittest.cc
@@ -47,7 +47,7 @@ class UserManagerTest : public testing::Test {
cros_settings_->AddSettingsProvider(&stub_settings_provider_);
// Populate the stub DeviceSettingsProvider with valid values.
- SetDeviceSettings(false, "");
+ SetDeviceSettings(false, "", false);
// Register an in-memory local settings instance.
local_state_.reset(new TestingPrefServiceSimple);
@@ -83,6 +83,11 @@ class UserManagerTest : public testing::Test {
ephemeral_users_enabled_;
}
+ bool GetUserManagerLocallyManagedUsersEnabledByPolicy() const {
+ return reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
Bernhard Bauer 2013/06/21 11:59:25 I know this is copy-and-pasted from other code her
dzhioev (left Google) 2013/06/21 13:42:29 Yes, reinterpret_cast is unnecessary here. Removed
+ locally_managed_users_enabled_by_policy_;
+ }
+
void SetUserManagerEphemeralUsersEnabled(bool ephemeral_users_enabled) {
reinterpret_cast<UserManagerImpl*>(UserManager::Get())->
ephemeral_users_enabled_ = ephemeral_users_enabled;
@@ -107,13 +112,16 @@ class UserManagerTest : public testing::Test {
}
void SetDeviceSettings(bool ephemeral_users_enabled,
- const std::string &owner) {
+ const std::string &owner,
+ bool locally_managed_users_enabled) {
base::FundamentalValue
ephemeral_users_enabled_value(ephemeral_users_enabled);
stub_settings_provider_.Set(kAccountsPrefEphemeralUsersEnabled,
ephemeral_users_enabled_value);
base::StringValue owner_value(owner);
stub_settings_provider_.Set(kDeviceOwner, owner_value);
+ stub_settings_provider_.Set(kAccountsPrefLocallyManagedUsersEnabled,
+ base::FundamentalValue(locally_managed_users_enabled));
}
void RetrieveTrustedDevicePolicies() {
@@ -142,7 +150,7 @@ TEST_F(UserManagerTest, RetrieveTrustedDevicePolicies) {
SetUserManagerEphemeralUsersEnabled(true);
SetUserManagerOwnerEmail("");
- SetDeviceSettings(false, "owner@invalid.domain");
+ SetDeviceSettings(false, "owner@invalid.domain", false);
RetrieveTrustedDevicePolicies();
EXPECT_FALSE(GetUserManagerEphemeralUsersEnabled());
@@ -166,7 +174,7 @@ TEST_F(UserManagerTest, RemoveAllExceptOwnerFromList) {
EXPECT_EQ((*users)[1]->email(), "user0@invalid.domain");
EXPECT_EQ((*users)[2]->email(), "owner@invalid.domain");
- SetDeviceSettings(true, "owner@invalid.domain");
+ SetDeviceSettings(true, "owner@invalid.domain", false);
RetrieveTrustedDevicePolicies();
users = &UserManager::Get()->GetUsers();
@@ -175,7 +183,7 @@ TEST_F(UserManagerTest, RemoveAllExceptOwnerFromList) {
}
TEST_F(UserManagerTest, RegularUserLoggedInAsEphemeral) {
- SetDeviceSettings(true, "owner@invalid.domain");
+ SetDeviceSettings(true, "owner@invalid.domain", false);
RetrieveTrustedDevicePolicies();
UserManager::Get()->UserLoggedIn(
@@ -190,4 +198,14 @@ TEST_F(UserManagerTest, RegularUserLoggedInAsEphemeral) {
EXPECT_EQ((*users)[0]->email(), "owner@invalid.domain");
}
+TEST_F(UserManagerTest, DisablingLMUByDeviceSettings) {
+ SetDeviceSettings(false, "owner@invalid.domain", false);
+ RetrieveTrustedDevicePolicies();
+ EXPECT_EQ(GetUserManagerLocallyManagedUsersEnabledByPolicy(), false);
+ SetDeviceSettings(false, "owner@invalid.domain", true);
+ RetrieveTrustedDevicePolicies();
+ EXPECT_EQ(GetUserManagerLocallyManagedUsersEnabledByPolicy(), true);
+
+}
+
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698