Index: chrome/browser/extensions/api/preference/preference_apitest.cc |
diff --git a/chrome/browser/extensions/api/preference/preference_apitest.cc b/chrome/browser/extensions/api/preference/preference_apitest.cc |
index 98be5cd99b03290bb8422643ad72c4768cccec96..4eb4717062279ffe72b5f04d0f34669015ca0d4a 100644 |
--- a/chrome/browser/extensions/api/preference/preference_apitest.cc |
+++ b/chrome/browser/extensions/api/preference/preference_apitest.cc |
@@ -12,7 +12,27 @@ |
#include "chrome/common/pref_names.h" |
#include "chrome/test/base/ui_test_utils.h" |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceApi) { |
+class ExtensionPreferenceApiTest : public ExtensionApiTest { |
+ protected: |
+ void CheckPreferences() { |
+ PrefService* pref_service = browser()->profile()->GetPrefs(); |
+ const PrefService::Preference* pref = pref_service->FindPreference( |
+ prefs::kBlockThirdPartyCookies); |
+ ASSERT_TRUE(pref); |
+ EXPECT_TRUE(pref->IsExtensionControlled()); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kAlternateErrorPagesEnabled)); |
+ EXPECT_TRUE(pref_service->GetBoolean(autofill::prefs::kAutofillEnabled)); |
+ EXPECT_FALSE(pref_service->GetBoolean(prefs::kBlockThirdPartyCookies)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableHyperlinkAuditing)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableReferrers)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableTranslate)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kNetworkPredictionEnabled)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kSafeBrowsingEnabled)); |
+ EXPECT_TRUE(pref_service->GetBoolean(prefs::kSearchSuggestEnabled)); |
+ } |
+}; |
+ |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, Standard) { |
PrefService* pref_service = browser()->profile()->GetPrefs(); |
pref_service->SetBoolean(prefs::kAlternateErrorPagesEnabled, false); |
pref_service->SetBoolean(autofill::prefs::kAutofillEnabled, false); |
@@ -25,23 +45,14 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceApi) { |
pref_service->SetBoolean(prefs::kSearchSuggestEnabled, false); |
EXPECT_TRUE(RunExtensionTest("preference/standard")) << message_; |
+ CheckPreferences(); |
- const PrefService::Preference* pref = pref_service->FindPreference( |
- prefs::kBlockThirdPartyCookies); |
- ASSERT_TRUE(pref); |
- EXPECT_TRUE(pref->IsExtensionControlled()); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kAlternateErrorPagesEnabled)); |
- EXPECT_TRUE(pref_service->GetBoolean(autofill::prefs::kAutofillEnabled)); |
- EXPECT_FALSE(pref_service->GetBoolean(prefs::kBlockThirdPartyCookies)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableHyperlinkAuditing)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableReferrers)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kEnableTranslate)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kNetworkPredictionEnabled)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kSafeBrowsingEnabled)); |
- EXPECT_TRUE(pref_service->GetBoolean(prefs::kSearchSuggestEnabled)); |
+ // The settings should not be reset when the extension is reloaded. |
Jeffrey Yasskin
2013/09/06 21:31:56
Could you also check that an uninstall+reinstall d
Bernhard Bauer
2013/09/10 13:28:18
Done.
|
+ ReloadExtension(last_loaded_extension_id_); |
+ CheckPreferences(); |
} |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferencePersistentIncognito) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, PersistentIncognito) { |
PrefService* prefs = browser()->profile()->GetPrefs(); |
prefs->SetBoolean(prefs::kBlockThirdPartyCookies, false); |
@@ -67,11 +78,11 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferencePersistentIncognito) { |
} |
// Flakily times out: http://crbug.com/106144 |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, DISABLED_PreferenceIncognitoDisabled) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, DISABLED_IncognitoDisabled) { |
EXPECT_FALSE(RunExtensionTest("preference/persistent_incognito")); |
} |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceSessionOnlyIncognito) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, SessionOnlyIncognito) { |
PrefService* prefs = browser()->profile()->GetPrefs(); |
prefs->SetBoolean(prefs::kBlockThirdPartyCookies, false); |
@@ -95,7 +106,7 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceSessionOnlyIncognito) { |
EXPECT_FALSE(prefs->GetBoolean(prefs::kBlockThirdPartyCookies)); |
} |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceClear) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, Clear) { |
PrefService* pref_service = browser()->profile()->GetPrefs(); |
pref_service->SetBoolean(prefs::kBlockThirdPartyCookies, true); |
@@ -108,12 +119,12 @@ IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceClear) { |
EXPECT_EQ(true, pref_service->GetBoolean(prefs::kBlockThirdPartyCookies)); |
} |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceOnChange) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, OnChange) { |
EXPECT_TRUE(RunExtensionTestIncognito("preference/onchange")) << |
message_; |
} |
-IN_PROC_BROWSER_TEST_F(ExtensionApiTest, PreferenceOnChangeSplit) { |
+IN_PROC_BROWSER_TEST_F(ExtensionPreferenceApiTest, OnChangeSplit) { |
ResultCatcher catcher; |
catcher.RestrictToProfile(browser()->profile()); |
ResultCatcher catcher_incognito; |