Index: chrome/browser/prefs/session_startup_pref_unittest.cc |
diff --git a/chrome/browser/prefs/session_startup_pref_unittest.cc b/chrome/browser/prefs/session_startup_pref_unittest.cc |
index e5e1fde09dbdeb646aeb4403ac59caa0e24ced17..9de83f6183fb793b5d6fecc992402bb92cb4f1cd 100644 |
--- a/chrome/browser/prefs/session_startup_pref_unittest.cc |
+++ b/chrome/browser/prefs/session_startup_pref_unittest.cc |
@@ -14,6 +14,7 @@ class SessionStartupPrefTest : public testing::Test { |
virtual void SetUp() { |
pref_service_.reset(new TestingPrefService); |
SessionStartupPref::RegisterUserPrefs(pref_service_.get()); |
+ pref_service_->RegisterBooleanPref(prefs::kHomePageIsNewTabPage, true); |
} |
scoped_ptr<TestingPrefService> pref_service_; |
@@ -57,6 +58,26 @@ TEST_F(SessionStartupPrefTest, URLListManagedOverridesUser) { |
EXPECT_EQ(3u, result.urls.size()); |
} |
+// Checks to make sure that if the user had previously not selected anything |
+// (so that, in effect, the default value "Open the homepage" was selected), |
+// their preferences are migrated on upgrade to m19. |
+TEST_F(SessionStartupPrefTest, DefaultMigration) { |
+ pref_service_->RegisterStringPref(prefs::kHomePage, "http://google.com/"); |
+ pref_service_->SetString(prefs::kHomePage, "http://chromium.org/"); |
+ pref_service_->SetBoolean(prefs::kHomePageIsNewTabPage, false); |
+ |
+ EXPECT_FALSE(pref_service_->HasPrefPath(prefs::kRestoreOnStartup)); |
+ |
+ SessionStartupPref pref = SessionStartupPref::GetStartupPref( |
+ pref_service_.get()); |
+ |
+ EXPECT_EQ(SessionStartupPref::URLS, pref.type); |
+ EXPECT_EQ(1U, pref.urls.size()); |
+ EXPECT_EQ(GURL("http://chromium.org/"), pref.urls[0]); |
+} |
+ |
+// Checks to make sure that if the user had previously selected "Open the |
+// "homepage", their preferences are migrated on upgrade to m19. |
TEST_F(SessionStartupPrefTest, HomePageMigration) { |
pref_service_->RegisterStringPref(prefs::kHomePage, "http://google.com/"); |