| Index: chrome/browser/extensions/extension_prefs_unittest.cc
|
| diff --git a/chrome/browser/extensions/extension_prefs_unittest.cc b/chrome/browser/extensions/extension_prefs_unittest.cc
|
| index b536410f3a463ef3cc3d750a47f39124619aa8ce..d10e1839d6d7b87baac2655ef2f5e66a4c5cf35d 100644
|
| --- a/chrome/browser/extensions/extension_prefs_unittest.cc
|
| +++ b/chrome/browser/extensions/extension_prefs_unittest.cc
|
| @@ -1111,3 +1111,31 @@ class ExtensionPrefsSetExtensionControlledPref
|
| };
|
| TEST_F(ExtensionPrefsSetExtensionControlledPref,
|
| ExtensionPrefsSetExtensionControlledPref) {}
|
| +
|
| +// Tests that the switches::kDisableExtensions command-line flag prevents
|
| +// extension controlled preferences from being enacted.
|
| +class ExtensionPrefsDisableExtensions
|
| + : public ExtensionPrefsPreferencesBase {
|
| + public:
|
| + ExtensionPrefsDisableExtensions()
|
| + : iteration_(0) {}
|
| + virtual ~ExtensionPrefsDisableExtensions() {}
|
| + virtual void Initialize() {
|
| + InstallExtControlledPref(ext1_, kPref1, Value::CreateStringValue("val1"));
|
| + // This becomes only active in the second verification phase.
|
| + prefs_.set_extensions_disabled(true);
|
| + }
|
| + virtual void Verify() {
|
| + std::string actual = prefs()->pref_service()->GetString(kPref1);
|
| + if (iteration_ == 0) {
|
| + EXPECT_EQ("val1", actual);
|
| + ++iteration_;
|
| + } else {
|
| + EXPECT_EQ(kDefaultPref1, actual);
|
| + }
|
| + }
|
| +
|
| + private:
|
| + int iteration_;
|
| +};
|
| +TEST_F(ExtensionPrefsDisableExtensions, ExtensionPrefsDisableExtensions) {}
|
|
|