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

Unified Diff: chrome/browser/signin/signin_manager_unittest.cc

Issue 14630003: signin: move SigninManagerBase::Signout to SigninManager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: apocalypse Created 7 years, 7 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/signin/signin_manager_unittest.cc
diff --git a/chrome/browser/signin/signin_manager_unittest.cc b/chrome/browser/signin/signin_manager_unittest.cc
index dc6f471301a990bedc0fb28424e430c17996aff3..eae9d7ae11a016cb0b9840242cc4467a58ec85f7 100644
--- a/chrome/browser/signin/signin_manager_unittest.cc
+++ b/chrome/browser/signin/signin_manager_unittest.cc
@@ -614,3 +614,48 @@ TEST_F(SigninManagerTest, TestIsWebBasedSigninFlowURL) {
"continue=https%3A%2F%2Fwww.google.com%2Fintl%2Fen-US%2Fchrome"
"%2Fblank.html%3Fsource%3D3%26nonadv%3D1&service=chromiumsync")));
}
+
+TEST_F(SigninManagerTest, Prohibited) {
+ g_browser_process->local_state()->SetString(
+ prefs::kGoogleServicesUsernamePattern, ".*@google.com");
+ manager_->Initialize(profile_.get());
+ EXPECT_TRUE(manager_->IsAllowedUsername("test@google.com"));
+ EXPECT_TRUE(manager_->IsAllowedUsername("happy@google.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername("test@invalid.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername("test@notgoogle.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername(std::string()));
+}
+
+TEST_F(SigninManagerTest, TestAlternateWildcard) {
+ // Test to make sure we accept "*@google.com" as a pattern (treat it as if
+ // the admin entered ".*@google.com").
+ g_browser_process->local_state()->SetString(
+ prefs::kGoogleServicesUsernamePattern, "*@google.com");
+ manager_->Initialize(profile_.get());
+ EXPECT_TRUE(manager_->IsAllowedUsername("test@google.com"));
+ EXPECT_TRUE(manager_->IsAllowedUsername("happy@google.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername("test@invalid.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername("test@notgoogle.com"));
+ EXPECT_FALSE(manager_->IsAllowedUsername(std::string()));
+}
+
+TEST_F(SigninManagerTest, ProhibitedAtStartup) {
+ profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername,
+ "monkey@invalid.com");
+ g_browser_process->local_state()->SetString(
+ prefs::kGoogleServicesUsernamePattern, ".*@google.com");
+ manager_->Initialize(profile_.get());
+ // Currently signed in user is prohibited by policy, so should be signed out.
+ EXPECT_EQ("", manager_->GetAuthenticatedUsername());
+}
+
+TEST_F(SigninManagerTest, ProhibitedAfterStartup) {
+ std::string user("monkey@invalid.com");
+ profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, user);
+ manager_->Initialize(profile_.get());
+ EXPECT_EQ(user, manager_->GetAuthenticatedUsername());
+ // Update the profile - user should be signed out.
+ g_browser_process->local_state()->SetString(
+ prefs::kGoogleServicesUsernamePattern, ".*@google.com");
+ EXPECT_EQ("", manager_->GetAuthenticatedUsername());
+}
« no previous file with comments | « chrome/browser/signin/signin_manager_base_unittest.cc ('k') | chrome/browser/signin/signin_tracker_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698