| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "components/signin/core/browser/signin_manager.h" | 5 #include "components/signin/core/browser/signin_manager.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 299 | 299 |
| 300 manager_->SetAuthenticatedUsername("user@gmail.com"); | 300 manager_->SetAuthenticatedUsername("user@gmail.com"); |
| 301 manager_->ProhibitSignout(true); | 301 manager_->ProhibitSignout(true); |
| 302 manager_->SignOut(signin_metrics::SIGNOUT_TEST); | 302 manager_->SignOut(signin_metrics::SIGNOUT_TEST); |
| 303 EXPECT_TRUE(manager_->IsAuthenticated()); | 303 EXPECT_TRUE(manager_->IsAuthenticated()); |
| 304 manager_->ProhibitSignout(false); | 304 manager_->ProhibitSignout(false); |
| 305 manager_->SignOut(signin_metrics::SIGNOUT_TEST); | 305 manager_->SignOut(signin_metrics::SIGNOUT_TEST); |
| 306 EXPECT_FALSE(manager_->IsAuthenticated()); | 306 EXPECT_FALSE(manager_->IsAuthenticated()); |
| 307 } | 307 } |
| 308 | 308 |
| 309 TEST_F(SigninManagerTest, TestIsWebBasedSigninFlowURL) { | |
| 310 EXPECT_FALSE(SigninManager::IsWebBasedSigninFlowURL( | |
| 311 GURL("http://www.google.com"))); | |
| 312 EXPECT_TRUE(SigninManager::IsWebBasedSigninFlowURL( | |
| 313 GURL("https://accounts.google.com/ServiceLogin?service=chromiumsync"))); | |
| 314 EXPECT_FALSE(SigninManager::IsWebBasedSigninFlowURL( | |
| 315 GURL("http://accounts.google.com/ServiceLogin?service=chromiumsync"))); | |
| 316 // http, not https, should not be treated as web based signin. | |
| 317 EXPECT_FALSE(SigninManager::IsWebBasedSigninFlowURL( | |
| 318 GURL("http://accounts.google.com/ServiceLogin?service=googlemail"))); | |
| 319 // chromiumsync is double-embedded in a continue query param. | |
| 320 EXPECT_TRUE(SigninManager::IsWebBasedSigninFlowURL( | |
| 321 GURL("https://accounts.google.com/CheckCookie?" | |
| 322 "continue=https%3A%2F%2Fwww.google.com%2Fintl%2Fen-US%2Fchrome" | |
| 323 "%2Fblank.html%3Fsource%3D3%26nonadv%3D1&service=chromiumsync"))); | |
| 324 } | |
| 325 | |
| 326 TEST_F(SigninManagerTest, Prohibited) { | 309 TEST_F(SigninManagerTest, Prohibited) { |
| 327 g_browser_process->local_state()->SetString( | 310 g_browser_process->local_state()->SetString( |
| 328 prefs::kGoogleServicesUsernamePattern, ".*@google.com"); | 311 prefs::kGoogleServicesUsernamePattern, ".*@google.com"); |
| 329 CreateNakedSigninManager(); | 312 CreateNakedSigninManager(); |
| 330 manager_->Initialize(g_browser_process->local_state()); | 313 manager_->Initialize(g_browser_process->local_state()); |
| 331 EXPECT_TRUE(manager_->IsAllowedUsername("test@google.com")); | 314 EXPECT_TRUE(manager_->IsAllowedUsername("test@google.com")); |
| 332 EXPECT_TRUE(manager_->IsAllowedUsername("happy@google.com")); | 315 EXPECT_TRUE(manager_->IsAllowedUsername("happy@google.com")); |
| 333 EXPECT_FALSE(manager_->IsAllowedUsername("test@invalid.com")); | 316 EXPECT_FALSE(manager_->IsAllowedUsername("test@invalid.com")); |
| 334 EXPECT_FALSE(manager_->IsAllowedUsername("test@notgoogle.com")); | 317 EXPECT_FALSE(manager_->IsAllowedUsername("test@notgoogle.com")); |
| 335 EXPECT_FALSE(manager_->IsAllowedUsername(std::string())); | 318 EXPECT_FALSE(manager_->IsAllowedUsername(std::string())); |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 profile()->GetPrefs()->GetString(prefs::kGoogleServicesUsername)); | 370 profile()->GetPrefs()->GetString(prefs::kGoogleServicesUsername)); |
| 388 EXPECT_EQ("external@example.com", manager_->GetAuthenticatedUsername()); | 371 EXPECT_EQ("external@example.com", manager_->GetAuthenticatedUsername()); |
| 389 } | 372 } |
| 390 | 373 |
| 391 TEST_F(SigninManagerTest, SigninNotAllowed) { | 374 TEST_F(SigninManagerTest, SigninNotAllowed) { |
| 392 std::string user("user@google.com"); | 375 std::string user("user@google.com"); |
| 393 profile()->GetPrefs()->SetString(prefs::kGoogleServicesUsername, user); | 376 profile()->GetPrefs()->SetString(prefs::kGoogleServicesUsername, user); |
| 394 profile()->GetPrefs()->SetBoolean(prefs::kSigninAllowed, false); | 377 profile()->GetPrefs()->SetBoolean(prefs::kSigninAllowed, false); |
| 395 SetUpSigninManagerAsService(); | 378 SetUpSigninManagerAsService(); |
| 396 } | 379 } |
| OLD | NEW |