Chromium Code Reviews| Index: chrome/browser/chromeos/login/login_utils_browsertest.cc |
| diff --git a/chrome/browser/chromeos/login/login_utils_browsertest.cc b/chrome/browser/chromeos/login/login_utils_browsertest.cc |
| index ab90a32f1725503624e06f832e8454337ee39e56..76b60783fba35d1fff4204d5a92632a9be32ef5f 100644 |
| --- a/chrome/browser/chromeos/login/login_utils_browsertest.cc |
| +++ b/chrome/browser/chromeos/login/login_utils_browsertest.cc |
| @@ -28,6 +28,7 @@ |
| #include "chrome/browser/policy/policy_service.h" |
| #include "chrome/browser/policy/proto/device_management_backend.pb.h" |
| #include "chrome/browser/profiles/profile_manager.h" |
| +#include "chrome/browser/rlz/rlz.h" |
| #include "chrome/common/chrome_notification_types.h" |
| #include "chrome/common/chrome_paths.h" |
| #include "chrome/common/chrome_switches.h" |
| @@ -50,6 +51,10 @@ |
| #include "testing/gmock/include/gmock/gmock.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| +#if defined(ENABLE_RLZ) |
| +#include "rlz/lib/rlz_value_store.h" |
| +#endif |
| + |
| namespace chromeos { |
| namespace { |
| @@ -264,6 +269,11 @@ class LoginUtilsTest : public testing::Test, |
| NULL, NULL)); |
| browser_process_->SetIOThread(io_thread_state_.get()); |
| +#if defined(ENABLE_RLZ) |
| + rlz_lib::testing::SetRlzStoreDirectory(scoped_temp_dir_.path()); |
| + RLZTracker::EnableZeroDelayForTesting(); |
| +#endif |
| + |
| RunUntilIdle(); |
| } |
| @@ -276,6 +286,9 @@ class LoginUtilsTest : public testing::Test, |
| InvokeOnIO( |
| base::Bind(&LoginUtilsTest::TearDownOnIO, base::Unretained(this))); |
| + // LoginUtils instance must not outlive Profile instances. |
| + LoginUtils::Set(NULL); |
| + |
| // These trigger some tasks that have to run while BrowserThread::UI |
| // exists. Delete all the profiles before deleting the connector. |
| browser_process_->SetProfileManager(NULL); |
| @@ -511,6 +524,23 @@ TEST_F(LoginUtilsTest, EnterpriseLoginDoesntBlockForNormalUser) { |
| EXPECT_EQ(kUsernameOtherDomain, user_manager->GetLoggedInUser()->email()); |
| } |
| +TEST_F(LoginUtilsTest, RlzInitialized) { |
| + // No RLZ brand code set initially. |
| + EXPECT_FALSE(local_state_.Get()->HasPrefPath(prefs::kRLZBrand)); |
| + |
| + PrepareProfile(kUsername); |
| + |
| + // RLZ brand code has been set to empty string. |
| + EXPECT_TRUE(local_state_.Get()->HasPrefPath(prefs::kRLZBrand)); |
| + EXPECT_EQ(std::string(), local_state_.Get()->GetString(prefs::kRLZBrand)); |
| + |
| + // RLZ value for homepage access point should have been initialized. |
|
Roger Tawa OOO till Jul 10th
2012/12/14 15:27:07
I'm not sure I understand this comment. What are
Ivan Korotkov
2012/12/14 15:32:44
More likely that Init() has been called (otherwise
|
| + string16 rlz_string; |
| + EXPECT_TRUE(RLZTracker::GetAccessPointRlz( |
| + RLZTracker::CHROME_HOME_PAGE, &rlz_string)); |
| + EXPECT_EQ(string16(), rlz_string); |
| +} |
| + |
| TEST_P(LoginUtilsBlockingLoginTest, EnterpriseLoginBlocksForEnterpriseUser) { |
| UserManager* user_manager = UserManager::Get(); |
| ASSERT_TRUE(!user_manager->IsUserLoggedIn()); |